Guid.TryParseExact Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Přetížení
TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Guid) |
Převede rozsah znaků představujících identifikátor GUID na ekvivalentní Guid strukturu za předpokladu, že řetězec je v zadaném formátu. |
TryParseExact(String, String, Guid) |
Převede řetězcovou reprezentaci identifikátoru GUID na ekvivalentní Guid strukturu za předpokladu, že je řetězec v zadaném formátu. |
TryParseExact(ReadOnlySpan<Char>, ReadOnlySpan<Char>, Guid)
- Zdroj:
- Guid.cs
- Zdroj:
- Guid.cs
- Zdroj:
- Guid.cs
Převede rozsah znaků představujících identifikátor GUID na ekvivalentní Guid strukturu za předpokladu, že řetězec je v zadaném formátu.
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
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 jen pro čtení obsahující znak 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".
- result
- Guid
Když tato metoda vrátí, obsahuje parsovanou hodnotu. Pokud metoda vrátí true
, result
obsahuje platnou Guidhodnotu . Pokud metoda vrátí false
hodnotu , rovná se Emptyresult
.
Návraty
true
pokud byla operace analýzy úspěšná; v opačném případě . false
Platí pro
TryParseExact(String, String, Guid)
- 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 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
Parametry
- input
- String
Identifikátor GUID, který chcete převést.
- format
- String
Jeden z následujících specifikátorů, který určuje přesný formát, který se má použít při interpretaci input
: "N", "D", "B", "P" nebo "X".
- result
- Guid
Když tato metoda vrátí, obsahuje parsovanou hodnotu. Pokud metoda vrátí true
, result
obsahuje platnou Guidhodnotu . Pokud metoda vrátí false
hodnotu , rovná se Emptyresult
.
Návraty
true
pokud byla operace analýzy úspěšná; v opačném případě . false
Příklady
Následující příklad volá metodu ToString(String) s jednotlivými podporovanými specifikátory formátu pro vygenerování pole řetězců, které představují jeden identifikátor GUID. Ty jsou pak předány TryParseExact metodě, která úspěšně parsuje ř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)
{
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}}'
Poznámky
Tato metoda vyžaduje, aby řetězec k převodu byl přesně ve formátu určeném format
parametrem, po odebrání úvodních a koncových prázdných znaků. Vrátí, false
pokud input
je null
nebo není ve formátu určeném nástrojem format
a nevyvolá výjimku.
Následující tabulka ukazuje specifikátory přijatého format
formátu pro parametr. "0" představuje číslici; pomlčky ("-"), složené závorky ("{", "}") a kulaté závorky ("(",")") vypadají tak, jak jsou vyobrazeny.
Specifikátor | Formát parametru input |
---|---|
N | 32 číslic: 00000000000000000000000000000000 |
D | 32 číslic oddělených pomlčkami: 00000000-0000-0000-0000-000000000000 |
B | 32 číslic oddělených pomlčkami a uzavřených ve složených závorkách: {00000000-0000-0000-0000-000000000000} |
P | 32 číslic oddělených pomlčkami a uzavřených v kulatých závorkách: (00000000-0000-0000-0000-000000000000) |
× | Čtyři šestnáctkové hodnoty uzavřené ve složených závorkách, přičemž čtvrtá hodnota je podmnožinu osmi šestnáctkových hodnot uzavřených rovněž ve složených závorkách: {0x00000000,0x0000,0x0000,{0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}} |