Guid.Parse Metoda

Definicja

Przeciążenia

Parse(String)

Konwertuje ciąg reprezentujący identyfikator GUID na równoważną strukturę Guid.Converts the string representation of a GUID to the equivalent Guid structure.

Parse(ReadOnlySpan<Char>)

Konwertuje zakres znaków tylko do odczytu, który reprezentuje identyfikator GUID w równoważnej strukturze Guid.Converts a read-only character span that represents a GUID to the equivalent Guid structure.

Parse(String)

Konwertuje ciąg reprezentujący identyfikator GUID na równoważną strukturę Guid.Converts the string representation of a GUID to the equivalent Guid structure.

public:
 static Guid Parse(System::String ^ input);
public static Guid Parse (string input);
static member Parse : string -> Guid
Public Shared Function Parse (input As String) As Guid

Parametry

input
String

Ciąg do konwersji.The string to convert.

Zwraca

Guid

Struktura, która zawiera wartość, która została przeanalizowana.A structure that contains the value that was parsed.

Wyjątki

Parametr input ma wartość null.input is null.

input nie jest w rozpoznawanym formacie.input is not in a recognized format.

Przykłady

Poniższy przykład tworzy nowy identyfikator GUID, konwertuje go na trzy osobne reprezentacje ciągów, wywołując metodę ToString(String) ze specyfikatorami formatu "B", "D" i "X", a następnie wywołuje metodę Parse, aby przekonwertować ciągi z powrotem na wartości Guid.The following example creates a new GUID, converts it to three separate string representations by calling the ToString(String) method with the "B", "D", and "X" format specifiers, and then calls the Parse method to convert the strings back to Guid values.

var originalGuid = Guid.NewGuid();
// Create an array of string representations of the GUID.
string[] stringGuids = { originalGuid.ToString("B"),
                         originalGuid.ToString("D"),
                         originalGuid.ToString("X") };

// Parse each string representation.
foreach (var stringGuid in stringGuids)
{
    try
    {
        Guid newGuid = Guid.Parse(stringGuid);
        Console.WriteLine($"Converted {stringGuid} to a Guid");
    }
    catch (ArgumentNullException)
    {
        Console.WriteLine("The string to be parsed is null.");
    }
    catch (FormatException)
    {
        Console.WriteLine($"Bad format: {stringGuid}");
    }
}

// The example displays output similar to the following:
//
//    Converted {81a130d2-502f-4cf1-a376-63edeb000e9f} to a Guid
//    Converted 81a130d2-502f-4cf1-a376-63edeb000e9f to a Guid
//    Converted {0x81a130d2,0x502f,0x4cf1,{0xa3,0x76,0x63,0xed,0xeb,0x00,0x0e,0x9f}} to a Guid
Module Example
   Public Sub Main()
      Dim originalGuid As Guid = Guid.NewGuid()
      ' Create an array of string representations of the GUID.
      Dim stringGuids() As String = { originalGuid.ToString("B"),
                                      originalGuid.ToString("D"),
                                      originalGuid.ToString("X") }
      
      ' Parse each string representation.
      For Each stringGuid In stringGuids
         Try 
            Dim newGuid As Guid = Guid.Parse(stringGuid) 
            Console.WriteLine("Converted {0} to a Guid", stringGuid)
         Catch e As ArgumentNullException
            Console.WriteLine("The string to be parsed is null.")   
         Catch e As FormatException
            Console.WriteLine("Bad format: {0}", stringGuid)
         End Try     
      Next                                      
   End Sub
End Module
' The example displays the following output:
'    Converted {81a130d2-502f-4cf1-a376-63edeb000e9f} to a Guid
'    Converted 81a130d2-502f-4cf1-a376-63edeb000e9f to a Guid
'    Converted {0x81a130d2,0x502f,0x4cf1,{0xa3,0x76,0x63,0xed,0xeb,0x00,0x0e,0x9f}} to a Guid

Uwagi

Metoda Parse przycina wszystkie wiodące i końcowe białe znaki z input i konwertuje ciąg reprezentujący identyfikator GUID na wartość Guid.The Parse method trims any leading or trailing white space from input and converts the string representation of a GUID to a Guid value. Ta metoda umożliwia konwertowanie ciągów w dowolnym z pięciu formatów utworzonych przez ToString(String) i ToString(String, IFormatProvider) metod, jak pokazano w poniższej tabeli.This method can convert strings in any of the five formats produced by the ToString(String) and ToString(String, IFormatProvider) methods, as shown in the following table.

SpecyfikatorSpecifier OpisDescription FormatFormat
N 32 cyfr32 digits 0000000000000000000000000000000000000000000000000000000000000000
D 32 cyfr rozdzielonych łącznikami32 digits separated by hyphens 00000000-0000-0000-0000-00000000000000000000-0000-0000-0000-000000000000
B 32 cyfr rozdzielonych łącznikami, ujęte w nawiasy klamrowe32 digits separated by hyphens, enclosed in braces {00000000-0000-0000-0000-000000000000}
P 32 cyfr oddzielonych znakami łączników ujętych w nawiasy32 digits separated by hyphens, enclosed in parentheses (00000000-0000-0000-0000-000000000000)(00000000-0000-0000-0000-000000000000)
X Cztery wartości szesnastkowe ujęte w nawiasy klamrowe, gdzie czwarta wartość jest podzbiorem ośmiu wartości szesnastkowych, które są również ujęte w nawiasy klamroweFour hexadecimal values enclosed in braces, where the fourth value is a subset of eight hexadecimal values that is also enclosed in braces {0x00000000, 0x0000, 0x0000, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}{0x00000000,0x0000,0x0000,{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}

Metoda zgłasza FormatException, jeśli nie można pomyślnie przeanalizować ciągu.The method throws a FormatException if it is unable to successfully parse the string. Oto niektóre z powodów, dla których może się to zdarzyć:Here are some of the reasons why this might occur include:

  • input zawiera znaki, które nie są częścią zestawu znaków szesnastkowych.input contains characters that are not part of the hexadecimal character set.

  • input ma za dużo lub za mało znaków numerycznych.input has too many or too few numeric characters.

  • input ma zbyt wiele lub zbyt mało znaków nienumerycznych, które są odpowiednie dla danego formatu.input has too many or too few of the non-numeric characters appropriate for a particular format.

  • input nie jest w jednym z formatów rozpoznawanych przez metodę ToString i wymienione w poprzedniej tabeli.input is not in one of the formats recognized by the ToString method and listed in the previous table.

Użyj metody TryParse, aby przechwycić wszelkie nieudane operacje analizy bez konieczności obsługi wyjątku.Use the TryParse method to catch any unsuccessful parse operations without having to handle an exception.

Zobacz też

Parse(ReadOnlySpan<Char>)

Konwertuje zakres znaków tylko do odczytu, który reprezentuje identyfikator GUID w równoważnej strukturze Guid.Converts a read-only character span that represents a GUID to the equivalent Guid structure.

public:
 static Guid Parse(ReadOnlySpan<char> input);
public static Guid Parse (ReadOnlySpan<char> input);
static member Parse : ReadOnlySpan<char> -> Guid
Public Shared Function Parse (input As ReadOnlySpan(Of Char)) As Guid

Parametry

input
ReadOnlySpan<Char>

Zakres tylko do odczytu zawierający bajty reprezentujące identyfikator GUID.A read-only span containing the bytes representing a GUID.

Zwraca

Guid

Struktura, która zawiera wartość, która została przeanalizowana.A structure that contains the value that was parsed.

Wyjątki

input nie jest w rozpoznawanym formacie.input is not in a recognized format.

— lub —-or-

Po przycięciu długość zakresu znaków tylko do odczytu wynosi 0.After trimming, the length of the read-only character span is 0.

Uwagi

Metoda Parse przycina wszystkie początkowe i końcowe białe znaki z input i konwertuje pozostałe znaki w input na wartość Guid.The Parse method trims any leading or trailing white space characters from input and converts the remaining characters in input to a Guid value. Ta metoda umożliwia konwertowanie zakresu znaków, który reprezentuje dowolny z pięciu formatów utworzonych przez metody ToString, jak pokazano w poniższej tabeli.This method can convert a character span that represents any of the five formats produced by the ToString methods, as shown in the following table.

SpecyfikatorSpecifier OpisDescription FormatFormat
N 32 cyfr32 digits 0000000000000000000000000000000000000000000000000000000000000000
D 32 cyfr rozdzielonych łącznikami32 digits separated by hyphens 00000000-0000-0000-0000-00000000000000000000-0000-0000-0000-000000000000
B 32 cyfr rozdzielonych łącznikami, ujęte w nawiasy klamrowe32 digits separated by hyphens, enclosed in braces {00000000-0000-0000-0000-000000000000}
P 32 cyfr oddzielonych znakami łączników ujętych w nawiasy32 digits separated by hyphens, enclosed in parentheses (00000000-0000-0000-0000-000000000000)(00000000-0000-0000-0000-000000000000)
X Cztery wartości szesnastkowe ujęte w nawiasy klamrowe, gdzie czwarta wartość jest podzbiorem ośmiu wartości szesnastkowych, które są również ujęte w nawiasy klamroweFour hexadecimal values enclosed in braces, where the fourth value is a subset of eight hexadecimal values that is also enclosed in braces {0x00000000, 0x0000, 0x0000, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}{0x00000000,0x0000,0x0000,{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}

Metoda zgłasza FormatException, jeśli nie można pomyślnie przeanalizować ciągu.The method throws a FormatException if it is unable to successfully parse the string. Oto niektóre z powodów, dla których może się to zdarzyć:Here are some of the reasons why this might occur include:

  • input zawiera znaki, które nie są częścią zestawu znaków szesnastkowych.input contains characters that are not part of the hexadecimal character set.

  • input ma za dużo lub za mało znaków numerycznych.input has too many or too few numeric characters.

  • input ma zbyt wiele lub zbyt mało znaków nienumerycznych, które są odpowiednie dla danego formatu.input has too many or too few of the non-numeric characters appropriate for a particular format.

  • input nie jest w jednym z formatów rozpoznawanych przez metodę ToString i wymienione w poprzedniej tabeli.input is not in one of the formats recognized by the ToString method and listed in the previous table.

Użyj metody TryParse, aby przechwycić wszelkie nieudane operacje analizy bez konieczności obsługi wyjątku.Use the TryParse method to catch any unsuccessful parse operations without having to handle an exception.

Dotyczy