Guid.Parse Metoda

Definicja

Przeciążenia

Parse(String, IFormatProvider)

Analizuje ciąg w wartość.

Parse(ReadOnlySpan<Char>, IFormatProvider)

Analizuje zakres znaków w wartości.

Parse(ReadOnlySpan<Char>)

Konwertuje zakres znaków tylko do odczytu reprezentujący identyfikator GUID do równoważnej Guid struktury.

Parse(String)

Konwertuje reprezentację ciągu identyfikatora GUID na równoważną Guid strukturę.

Parse(String, IFormatProvider)

Analizuje ciąg w wartość.

public:
 static Guid Parse(System::String ^ s, IFormatProvider ^ provider) = IParsable<Guid>::Parse;
public static Guid Parse (string s, IFormatProvider? provider);
static member Parse : string * IFormatProvider -> Guid
Public Shared Function Parse (s As String, provider As IFormatProvider) As Guid

Parametry

s
String
provider
IFormatProvider

Zwraca

Guid

Wynik analizy s.

Implementuje

Dotyczy

Parse(ReadOnlySpan<Char>, IFormatProvider)

Analizuje zakres znaków w wartości.

public:
 static Guid Parse(ReadOnlySpan<char> s, IFormatProvider ^ provider) = ISpanParsable<Guid>::Parse;
public static Guid Parse (ReadOnlySpan<char> s, IFormatProvider? provider);
static member Parse : ReadOnlySpan<char> * IFormatProvider -> Guid
Public Shared Function Parse (s As ReadOnlySpan(Of Char), provider As IFormatProvider) As Guid

Parametry

provider
IFormatProvider

Zwraca

Guid

Wynik analizy s.

Implementuje

Dotyczy

Parse(ReadOnlySpan<Char>)

Konwertuje zakres znaków tylko do odczytu reprezentujący identyfikator GUID do równoważnej Guid struktury.

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.

Zwraca

Guid

Struktura zawierająca wartość, która została przeanalizowana.

Wyjątki

input nie jest w rozpoznanym formacie.

-lub-

Po przycinaniu długość zakresu znaków tylko do odczytu wynosi 0.

Uwagi

Metoda Parse przycina wszystkie znaki wiodące lub końcowe białe znaki z input i konwertuje pozostałe znaki na input Guid wartość. Ta metoda może przekonwertować zakres znaków reprezentujący dowolny z pięciu formatów generowanych przez ToString metody, jak pokazano w poniższej tabeli.

Specyfikator Opis Format
N Cyfry szesnastkowe 32 00000000000000000000000000000000
D 32 cyfry szesnastkowe rozdzielone łącznikami 00000000-0000-0000-0000-000000000000
B 32 cyfry szesnastkowe oddzielone łącznikami, ujęte w nawiasy klamrowe {00000000-0000-0000-0000-000000000000}
P 32 cyfry szesnastkowe rozdzielone łącznikami, ujęte w nawiasy (00000000-0000-0000-0000-000000000000)
X Cztery wartości szesnastkowe ujęte w nawiasy klamrowe, gdzie czwarta wartość jest podzbiorem ośmiu wartości szesnastkowe, które są również ujęte w nawiasy klamrowe {0x00000000, 0x0000, 0x0000, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}

Metoda zgłasza błąd FormatException , jeśli nie może pomyślnie przeanalizować ciągu. Niektóre z powodów, dla których taka sytuacja może wystąpić, to:

  • input zawiera znaki, które nie są częścią zestawu znaków szesnastkowym.

  • input ma zbyt wiele znaków lub za mało znaków.

  • input nie jest w jednym z formatów rozpoznawanych przez metodę ToString i wymienionych w poprzedniej tabeli.

Użyj metody , TryParse aby przechwycić wszystkie nieudane operacje analizy bez konieczności obsługi wyjątku.

Dotyczy

Parse(String)

Konwertuje reprezentację ciągu identyfikatora GUID na równoważną Guid strukturę.

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.

Zwraca

Guid

Struktura zawierająca wartość, która została przeanalizowana.

Wyjątki

input to null.

input nie jest w rozpoznanym formacie.

Przykłady

Poniższy przykład tworzy nowy identyfikator GUID, konwertuje go na trzy oddzielne reprezentacje ciągów, wywołując ToString(String) metodę z specyfikatorami formatu "B", "D" i "X", a następnie wywołuje Parse metodę, aby przekonwertować ciągi z powrotem na Guid wartości.

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
open System

let originalGuid = Guid.NewGuid()
// Create an array of string representations of the GUID.
let stringGuids =
    [| originalGuid.ToString "B"
       originalGuid.ToString "D"
       originalGuid.ToString "X" |]

// Parse each string representation.
for stringGuid in stringGuids do
    try
        let newGuid = Guid.Parse stringGuid
        printfn $"Converted {stringGuid} to a Guid"
    with
    | :? ArgumentNullException ->
        printfn "The string to be parsed is null."
    | :? FormatException ->
        printfn $"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 lub końcowe białe znaki z input i konwertuje reprezentację Guid ciągu identyfikatora GUID na wartość. Ta metoda może konwertować ciągi w dowolnym z pięciu formatów generowanych przez ToString(String) metody i ToString(String, IFormatProvider) , jak pokazano w poniższej tabeli.

Specyfikator Opis Format
N Cyfry szesnastkowe 32 00000000000000000000000000000000
D 32 cyfry szesnastkowe rozdzielone łącznikami 00000000-0000-0000-0000-000000000000
B 32 cyfry szesnastkowe oddzielone łącznikami, ujęte w nawiasy klamrowe {00000000-0000-0000-0000-000000000000}
P 32 cyfry szesnastkowe rozdzielone łącznikami, ujęte w nawiasy (00000000-0000-0000-0000-000000000000)
X Cztery wartości szesnastkowe ujęte w nawiasy klamrowe, gdzie czwarta wartość jest podzbiorem ośmiu wartości szesnastkowe, które są również ujęte w nawiasy klamrowe {0x00000000, 0x0000, 0x0000, {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}}

Metoda zgłasza błąd FormatException , jeśli nie może pomyślnie przeanalizować ciągu. Niektóre z powodów, dla których taka sytuacja może wystąpić, to:

  • input zawiera znaki, które nie są częścią zestawu znaków szesnastkowym.

  • input ma zbyt wiele znaków lub za mało znaków.

  • input nie jest w jednym z formatów rozpoznawanych przez metodę ToString i wymienionych w poprzedniej tabeli.

Użyj metody , TryParse aby przechwycić wszystkie nieudane operacje analizy bez konieczności obsługi wyjątku.

Zobacz też

Dotyczy