Guid.TryParseExact Metod

Definition

Överlagringar

Name Description
TryParseExact(String, String, Guid)

Konverterar strängrepresentationen av ett GUID till motsvarande Guid struktur, förutsatt att strängen är i det angivna formatet.

TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Guid)

Konverterar teckenintervall som representerar GUID till motsvarande Guid struktur, förutsatt att strängen är i det angivna formatet.

TryParseExact(String, String, Guid)

Källa:
Guid.cs
Källa:
Guid.cs
Källa:
Guid.cs
Källa:
Guid.cs
Källa:
Guid.cs

Konverterar strängrepresentationen av ett GUID till motsvarande Guid struktur, förutsatt att strängen är i det angivna formatet.

public:
 static bool TryParseExact(System::String ^ input, System::String ^ format, [Runtime::InteropServices::Out] Guid % result);
public static bool TryParseExact(string input, string format, out Guid result);
public static bool TryParseExact(string? input, string? format, out Guid result);
static member TryParseExact : string * string * Guid -> bool
Public Shared Function TryParseExact (input As String, format As String, ByRef result As Guid) As Boolean

Parametrar

input
String

GUID som ska konverteras.

format
String

En av följande specificerare som anger det exakta format som ska användas när du tolkar input: "N", "D", "B", "P" eller "X".

result
Guid

När den här metoden returnerar innehåller det parsade värdet. Om metoden returnerar trueresult innehåller innehåller en giltig Guid. Om metoden returnerar falseär result lika med Empty.

Returer

trueom parsningsåtgärden lyckades. annars . false

Exempel

I följande exempel anropas ToString(String) metoden med varje formatspecificerare som stöds för att generera en matris med strängar som representerar ett enda GUID. Dessa skickas sedan till TryParseExact metoden, som parsar strängen som överensstämmer med formatspecificeraren "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)
{
    if (Guid.TryParseExact(stringGuid, "B", out var newGuid))
        Console.WriteLine($"Successfully parsed {stringGuid}");
    else
        Console.WriteLine($"Unable to parse '{stringGuid}'");
}

// The example displays output similar to the following:
//
//    Unable to parse 'c0fb150f6bf344df984a3a0611ae5e4a'
//    Unable to parse 'c0fb150f-6bf3-44df-984a-3a0611ae5e4a'
//    Successfully parsed {c0fb150f-6bf3-44df-984a-3a0611ae5e4a}
//    Unable to parse '(c0fb150f-6bf3-44df-984a-3a0611ae5e4a)'
//    Unable to parse '{0xc0fb150f,0x6bf3,0x44df,{0x98,0x4a,0x3a,0x06,0x11,0xae,0x5e,0x4a}}'
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
    match Guid.TryParseExact(stringGuid, "B") with
    | true, newGuid ->
        printfn $"Successfully parsed {stringGuid}"
    | _ ->
        printfn $"Unable to parse '{stringGuid}'"

// The example displays output similar to the following:
//
//    Unable to parse 'c0fb150f6bf344df984a3a0611ae5e4a'
//    Unable to parse 'c0fb150f-6bf3-44df-984a-3a0611ae5e4a'
//    Successfully parsed {c0fb150f-6bf3-44df-984a-3a0611ae5e4a}
//    Unable to parse '(c0fb150f-6bf3-44df-984a-3a0611ae5e4a)'
//    Unable to parse '{0xc0fb150f,0x6bf3,0x44df,{0x98,0x4a,0x3a,0x06,0x11,0xae,0x5e,0x4a}}'
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

      ' Try to parse the strings in the array using the "B" format specifier.
      For Each stringGuid In stringGuids
         Dim newGuid As Guid
         If Guid.TryParseExact(stringGuid, "B", newGuid) Then
            Console.WriteLine("Successfully parsed {0}", stringGuid)
         Else
            Console.WriteLine("Unable to parse '{0}'", stringGuid)
         End If   
      Next      
   End Sub
End Module
' The example displays the following output:
'    Unable to parse 'c0fb150f6bf344df984a3a0611ae5e4a'
'    Unable to parse 'c0fb150f-6bf3-44df-984a-3a0611ae5e4a'
'    Successfully parsed {c0fb150f-6bf3-44df-984a-3a0611ae5e4a}
'    Unable to parse '(c0fb150f-6bf3-44df-984a-3a0611ae5e4a)'
'    Unable to parse '{0xc0fb150f,0x6bf3,0x44df,{0x98,0x4a,0x3a,0x06,0x11,0xae,0x5e,0x4a}}'

Kommentarer

Den här metoden kräver att strängen konverteras för att vara exakt i det format som anges av parametern format , när inledande och avslutande blankstegstecken har tagits bort. Den returnerar false om input är null eller inte har det format som anges av format, och utlöser inget undantag.

I följande tabell visas de godkända formatspecificerarna för parametern format . "0" representerar en siffra. bindestreck ("-"), klammerparenteser ("{", "}") och parenteser ("(", ")") visas som visas.

Specificerare Format för parametern input
N 32 siffror:

00000000000000000000000000000000
D 32 siffror avgränsade med bindestreck:

00000000-0000-0000-0000-000000000000
B 32 siffror avgränsade med bindestreck, omgivna av klammerparenteser:

{00000000-0000-0000-0000-000000000000}
P 32 siffror avgränsade med bindestreck, omgivna av parenteser:

(00000000-0000-0000-0000-000000000000)
X Fyra hexadecimala värden omgivna av klammerparenteser, där det fjärde värdet är en delmängd av åtta hexadecimala värden som också omges av klammerparenteser:

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

Se även

Gäller för

TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Guid)

Källa:
Guid.cs
Källa:
Guid.cs
Källa:
Guid.cs
Källa:
Guid.cs
Källa:
Guid.cs

Konverterar teckenintervall som representerar GUID till motsvarande Guid struktur, förutsatt att strängen är i det angivna formatet.

public:
 static bool TryParseExact(ReadOnlySpan<char> input, ReadOnlySpan<char> format, [Runtime::InteropServices::Out] Guid % result);
public static bool TryParseExact(ReadOnlySpan<char> input, ReadOnlySpan<char> format, out Guid result);
static member TryParseExact : ReadOnlySpan<char> * ReadOnlySpan<char> * Guid -> bool
Public Shared Function TryParseExact (input As ReadOnlySpan(Of Char), format As ReadOnlySpan(Of Char), ByRef result As Guid) As Boolean

Parametrar

input
ReadOnlySpan<Char>

Ett skrivskyddat intervall som innehåller de tecken som representerar GUID som ska konverteras.

format
ReadOnlySpan<Char>

Ett skrivskyddat intervall som innehåller ett tecken som representerar någon av följande specificerare som anger det exakta format som ska användas när du tolkar input: "N", "D", "B", "P" eller "X".

result
Guid

När den här metoden returnerar innehåller det parsade värdet. Om metoden returnerar trueresult innehåller innehåller en giltig Guid. Om metoden returnerar falseär result lika med Empty.

Returer

trueom parsningsåtgärden lyckades. annars . false

Gäller för