Guid.ParseExact Metoda

Definice

Přetížení

Name Description
ParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Převede reprezentaci rozsahu znaků identifikátoru GUID na ekvivalentní Guid strukturu za předpokladu, že řetězec je v zadaném formátu.

ParseExact(String, String)

Převede řetězcovou reprezentaci identifikátoru GUID na ekvivalentní Guid strukturu za předpokladu, že je řetězec v zadaném formátu.

ParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>)

Zdroj:
Guid.cs
Zdroj:
Guid.cs
Zdroj:
Guid.cs
Zdroj:
Guid.cs
Zdroj:
Guid.cs

Převede reprezentaci rozsahu znaků identifikátoru GUID na ekvivalentní Guid strukturu za předpokladu, že řetězec je v zadaném formátu.

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

Parametry

input
ReadOnlySpan<Char>

Rozsah jen pro čtení obsahující znaky představující identifikátor GUID, který se má převést.

format
ReadOnlySpan<Char>

Rozsah znaků jen pro čtení představující jeden z následujících specifikátorů, který označuje přesný formát, který se má použít při interpretaci input: "N", "D", "B", "P" nebo "X".

Návraty

Struktura, která obsahuje hodnotu, která byla analyzována.

Poznámky

Metoda ParseExact vyžaduje, aby rozsah znaků jen pro čtení byl převeden přesně ve formátu určeném format parametrem, po odebrání počátečních a koncových znaků prázdných znaků. Následující tabulka ukazuje specifikátory přijatého format formátu pro parametr. "0" představuje číslici; Spojovníky ("-"), složené závorky ("{", "}") a závorky ("("; ")") se zobrazí, jak je znázorněno.

Specifikátor Formát parametru input
N 32 šestnáctkových číslic:

00000000000000000000000000000000
D 32 šestnáctkových číslic oddělených spojovníky:

00000000-0000-0000-0000-000000000000
B 32 šestnáctkových číslic oddělených pomlčkami, uzavřených ve složených závorkách:

{00000000-0000-0000-0000-000000000000}
P 32 šestnáctkových číslic oddělených pomlčkami, uzavřených v závorkách:

(00000000-0000-0000-0000-000000000000)
X Čtyři šestnáctkové hodnoty uzavřené ve složených závorkách, kde čtvrtá hodnota je podmnožinou osmi šestnáctkových hodnot, které jsou také uzavřeny ve složených závorkách:

{0x00000000,0x0000,0x0000,{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}

Platí pro

ParseExact(String, String)

Zdroj:
Guid.cs
Zdroj:
Guid.cs
Zdroj:
Guid.cs
Zdroj:
Guid.cs
Zdroj:
Guid.cs

Převede řetězcovou reprezentaci identifikátoru GUID na ekvivalentní Guid strukturu za předpokladu, že je řetězec v zadaném formátu.

public:
 static Guid ParseExact(System::String ^ input, System::String ^ format);
public static Guid ParseExact(string input, string format);
static member ParseExact : string * string -> Guid
Public Shared Function ParseExact (input As String, format As String) As Guid

Parametry

input
String

Identifikátor GUID, který chcete převést.

format
String

Jeden z následujících specifikátorů, který označuje přesný formát, který se má použít při interpretaci input: "N", "D", "B", "P" nebo "X".

Návraty

Struktura, která obsahuje hodnotu, která byla analyzována.

Výjimky

input nebo format je null.

input není ve formátu určeném parametrem format.

Příklady

Následující příklad volá metodu ToString(String) s každým z podporovaných specifikátorů formátu pro vygenerování pole řetězců, které představují jeden identifikátor GUID. Ty se pak předají ParseExact metodě, která úspěšně parsuje pouze řetězec, který odpovídá specifikátoru formátu "B".

// Define an array of all format specifiers.
string[] formats = { "N", "D", "B", "P", "X" };
Guid guid = Guid.NewGuid();
// Create an array of valid Guid string representations.
var stringGuids = new string[formats.Length];
for (int ctr = 0; ctr < formats.Length; ctr++)
    stringGuids[ctr] = guid.ToString(formats[ctr]);

// Parse the strings in the array using the "B" format specifier.
foreach (var stringGuid in stringGuids)
{
    try
    {
        Guid newGuid = Guid.ParseExact(stringGuid, "B");
        Console.WriteLine($"Successfully parsed {stringGuid}");
    }
    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:
//
//    Bad Format: eb5c8c7d187a44e68afb81e854c39457
//    Bad Format: eb5c8c7d-187a-44e6-8afb-81e854c39457
//    Successfully parsed {eb5c8c7d-187a-44e6-8afb-81e854c39457}
//    Bad Format: (eb5c8c7d-187a-44e6-8afb-81e854c39457)
//    Bad Format: {0xeb5c8c7d,0x187a,0x44e6,{0x8a,0xfb,0x81,0xe8,0x54,0xc3,0x94,0x57}}
open System

// Define an array of all format specifiers.
let formats =
    [| "N"; "D"; "B"; "P"; "X" |]

let guid = Guid.NewGuid()

// Create an array of valid Guid string representations.
let stringGuids = 
    Array.map guid.ToString formats

// Parse the strings in the array using the "B" format specifier.
for stringGuid in stringGuids do
    try
        let newGuid = Guid.ParseExact(stringGuid, "B")
        printfn $"Successfully parsed {stringGuid}"
    with
    | :? ArgumentNullException ->
        printfn "The string to be parsed is null."
    | :? FormatException ->
        printfn $"Bad Format: {stringGuid}"

// The example displays output similar to the following:
//
//    Bad Format: eb5c8c7d187a44e68afb81e854c39457
//    Bad Format: eb5c8c7d-187a-44e6-8afb-81e854c39457
//    Successfully parsed {eb5c8c7d-187a-44e6-8afb-81e854c39457}
//    Bad Format: (eb5c8c7d-187a-44e6-8afb-81e854c39457)
//    Bad Format: {0xeb5c8c7d,0x187a,0x44e6,{0x8a,0xfb,0x81,0xe8,0x54,0xc3,0x94,0x57}}
Module Example
   Public Sub Main()
      ' Define an array of all format specifiers.
      Dim formats() As String = { "N", "D", "B", "P", "X" }
      Dim guid As Guid = Guid.NewGuid()
      ' Create an array of valid Guid string representations.
      Dim stringGuids(formats.Length - 1) As String
      For ctr As Integer = 0 To formats.Length - 1
         stringGuids(ctr) = guid.ToString(formats(ctr))
      Next

      ' Parse the strings in the array using the "B" format specifier.
      For Each stringGuid In stringGuids
         Try
            Dim newGuid As Guid = Guid.ParseExact(stringGuid, "B")
            Console.WriteLine("Successfully parsed {0}", 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:
'    Bad Format: 3351d3f0006747089ff928b5179b2051
'    Bad Format: 3351d3f0-0067-4708-9ff9-28b5179b2051
'    Successfully parsed {3351d3f0-0067-4708-9ff9-28b5179b2051}
'    Bad Format: (3351d3f0-0067-4708-9ff9-28b5179b2051)
'    Bad Format: {0x3351d3f0,0x0067,0x4708,{0x9f,0xf9,0x28,0xb5,0x17,0x9b,0x20,0x51}}

Poznámky

Metoda ParseExact vyžaduje, aby byl řetězec převeden přesně ve formátu určeném format parametrem, po odebrání počátečních a koncových prázdných znaků. Následující tabulka ukazuje specifikátory přijatého format formátu pro parametr. "0" představuje číslici; Spojovníky ("-"), složené závorky ("{", "}") a závorky ("("; ")") se zobrazí, jak je znázorněno.

Specifikátor Formát parametru input
N 32 šestnáctkových číslic:

00000000000000000000000000000000
D 32 šestnáctkových číslic oddělených spojovníky:

00000000-0000-0000-0000-000000000000
B 32 šestnáctkových číslic oddělených pomlčkami, uzavřených ve složených závorkách:

{00000000-0000-0000-0000-000000000000}
P 32 šestnáctkových číslic oddělených pomlčkami, uzavřených v závorkách:

(00000000-0000-0000-0000-000000000000)
X Čtyři šestnáctkové hodnoty uzavřené ve složených závorkách, kde čtvrtá hodnota je podmnožinou osmi šestnáctkových hodnot, které jsou také uzavřeny ve složených závorkách:

{0x00000000,0x0000,0x0000,{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}}

Viz také

Platí pro