Guid.TryParseExact Yöntem

Tanım

Aşırı Yüklemeler

Name Description
TryParseExact(String, String, Guid)

Bir GUID'nin dize gösterimini, dizenin belirtilen biçimde olması koşuluyla eşdeğer Guid yapıya dönüştürür.

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

Dizenin belirtilen biçimde olması koşuluyla, GUID'yi temsil eden karakterlerin aralığını eşdeğer Guid yapıya dönüştürür.

TryParseExact(String, String, Guid)

Kaynak:
Guid.cs
Kaynak:
Guid.cs
Kaynak:
Guid.cs
Kaynak:
Guid.cs
Kaynak:
Guid.cs

Bir GUID'nin dize gösterimini, dizenin belirtilen biçimde olması koşuluyla eşdeğer Guid yapıya dönüştürür.

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

Parametreler

input
String

Dönüştürülecek GUID.

format
String

Yorumlarken inputkullanılacak tam biçimi gösteren aşağıdaki tanımlayıcılardan biri: "N", "D", "B", "P" veya "X".

result
Guid

Bu yöntem döndürdüğünde ayrıştırılmış değeri içerir. yöntemi döndürürsetrueresult, geçerli Guidbir içerir. yöntemi döndürürse falseeşittir resultEmpty.

Döndürülenler

true ayrıştırma işlemi başarılı olursa; aksi takdirde , false.

Örnekler

Aşağıdaki örnek, tek bir GUID'yi temsil eden bir dize dizisi oluşturmak için desteklenen biçim tanımlayıcılarının her biriyle yöntemini çağırır ToString(String) . Bunlar daha sonra yöntemine TryParseExact geçirilir ve bu yöntem "B" biçim tanımlayıcısına uyan dizeyi başarıyla ayrıştırılır.

// 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}}'

Açıklamalar

Bu yöntem, baştaki ve sondaki boşluk karakterleri kaldırıldıktan sonra dizenin format tam olarak parametresi tarafından belirtilen biçimde olmasını gerektirir. tarafından belirtilen falsebiçimdeyse inputnull veya değilse döndürür format ve bir özel durum oluşturmaz.

Aşağıdaki tabloda parametresi için kabul edilen biçim tanımlayıcıları gösterilmektedir format . "0" bir rakamı temsil eder; kısa çizgiler ("-"), ayraçlar ("{", "}") ve parantezler ("(", ")") gösterildiği gibi görünür.

Tanımlayıcı Parametrenin input biçimi
N 32 basamak:

00000000000000000000000000000000
D Kısa çizgilerle ayrılmış 32 basamak:

00000000-0000-0000-0000-000000000000
B Küme ayracı içine alınmış, kısa çizgilerle ayrılmış 32 basamak:

{00000000-0000-0000-0000-000000000000}
P Parantez içine alınmış, kısa çizgilerle ayrılmış 32 basamak:

(00000000-0000-0000-0000-000000000000)
X Ayraç içine alınmış dört onaltılık değer; dördüncü değer de ayraç içine alınmış sekiz onaltılık değerin alt kümesidir:

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

Ayrıca bkz.

Şunlara uygulanır

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

Kaynak:
Guid.cs
Kaynak:
Guid.cs
Kaynak:
Guid.cs
Kaynak:
Guid.cs
Kaynak:
Guid.cs

Dizenin belirtilen biçimde olması koşuluyla, GUID'yi temsil eden karakterlerin aralığını eşdeğer Guid yapıya dönüştürür.

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

Parametreler

input
ReadOnlySpan<Char>

Dönüştürülecek GUID'yi temsil eden karakterleri içeren salt okunur bir yayılma alanı.

format
ReadOnlySpan<Char>

Şu tanımlayıcılardan birini temsil eden ve "N", "D", "B", "P" veya "X" yorumlarken inputkullanılacak biçimi gösteren bir karakter içeren salt okunur bir yayılma alanı.

result
Guid

Bu yöntem döndürdüğünde ayrıştırılmış değeri içerir. yöntemi döndürürsetrueresult, geçerli Guidbir içerir. yöntemi döndürürse falseeşittir resultEmpty.

Döndürülenler

true ayrıştırma işlemi başarılı olursa; aksi takdirde , false.

Şunlara uygulanır