Поделиться через


Guid.Parse Метод

Определение

Перегрузки

Parse(String, IFormatProvider)

Анализирует строку в значение.

Parse(ReadOnlySpan<Char>, IFormatProvider)

Анализирует диапазон символов в значение.

Parse(String)

Преобразует строковое представление GUID в эквивалентную Guid структуру.

Parse(ReadOnlySpan<Char>)

Преобразует диапазон символов только для чтения, представляющий GUID в эквивалентную Guid структуру.

Parse(String, IFormatProvider)

Исходный код:
Guid.cs
Исходный код:
Guid.cs
Исходный код:
Guid.cs

Анализирует строку в значение.

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

Параметры

s
String

Строка для синтаксического анализа.

provider
IFormatProvider

Объект, предоставляющий сведения о форматировании, зависящее от языка и региональных параметров, о s.

Возвращаемое значение

Результат синтаксического анализа s.

Реализации

Применяется к

Parse(ReadOnlySpan<Char>, IFormatProvider)

Исходный код:
Guid.cs
Исходный код:
Guid.cs
Исходный код:
Guid.cs

Анализирует диапазон символов в значение.

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

Параметры

s
ReadOnlySpan<Char>

Диапазон символов для синтаксического анализа.

provider
IFormatProvider

Объект, предоставляющий сведения о форматировании, зависящее от языка и региональных параметров, о s.

Возвращаемое значение

Результат синтаксического анализа s.

Реализации

Применяется к

Parse(String)

Исходный код:
Guid.cs
Исходный код:
Guid.cs
Исходный код:
Guid.cs

Преобразует строковое представление GUID в эквивалентную Guid структуру.

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

Параметры

input
String

Строка для преобразования.

Возвращаемое значение

Структура, содержащая значение, которое было проанализировано.

Исключения

input null.

input не находится в распознаваемом формате.

Примеры

В следующем примере создается новый GUID, он преобразуется в три отдельных строковых представления, вызывая метод ToString(String) с описателями формата B, D и X, а затем вызывает метод Parse для преобразования строк обратно в Guid значения.

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

Комментарии

Метод Parse обрезает любой начальный или конечный пробел из input и преобразует строковое представление GUID в значение Guid. Этот метод может преобразовать строки в любом из пяти форматов, созданных ToString(String) и ToString(String, IFormatProvider) методами, как показано в следующей таблице.

Описатель Описание Формат
N 32 шестнадцатеричные цифры 00000000000000000000000000000000
D 32 шестнадцатеричные цифры, разделенные дефисом 00000000-0000-0000-0000-000000000000
B 32 шестнадцатеричные цифры, разделенные дефисом, заключены в фигурные скобки {00000000-0000-0000-0000-000000000000}
P 32 шестнадцатеричные цифры, разделенные дефисом, заключены в скобки (00000000-0000-0000-0000-000000000000)
X Четыре шестнадцатеричные значения, заключенные в скобки, где четвертое значение является подмножеством из восьми шестнадцатеричных значений, которые также заключены в скобки {0x00000000,0x0000,0x0000,{0x00,0x00,0x00,0x00,0x00,0x00,0x00;0x00}}

Метод создает FormatException, если не удается успешно проанализировать строку. Ниже приведены некоторые причины, по которым это может произойти:

  • input содержит символы, которые не являются частью шестнадцатеричного набора символов.

  • input слишком много или слишком мало символов.

  • input не входит в один из форматов, распознаваемых методом ToString, и указан в предыдущей таблице.

Используйте метод TryParse для перехвата любых неудачных операций синтаксического анализа без необходимости обрабатывать исключение.

См. также раздел

Применяется к

Parse(ReadOnlySpan<Char>)

Исходный код:
Guid.cs
Исходный код:
Guid.cs
Исходный код:
Guid.cs

Преобразует диапазон символов только для чтения, представляющий GUID в эквивалентную Guid структуру.

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

Параметры

input
ReadOnlySpan<Char>

Диапазон только для чтения, содержащий байты, представляющие GUID.

Возвращаемое значение

Структура, содержащая значение, которое было проанализировано.

Исключения

input не находится в распознаваемом формате.

-или-

После обрезки длина диапазона символов только для чтения составляет 0.

Комментарии

Метод Parse обрезает все начальные или конечные пробелы от input и преобразует оставшиеся символы в input в значение Guid. Этот метод может преобразовать диапазон символов, представляющий любой из пяти форматов, созданных ToString методами, как показано в следующей таблице.

Описатель Описание Формат
N 32 шестнадцатеричные цифры 00000000000000000000000000000000
D 32 шестнадцатеричные цифры, разделенные дефисом 00000000-0000-0000-0000-000000000000
B 32 шестнадцатеричные цифры, разделенные дефисом, заключены в фигурные скобки {00000000-0000-0000-0000-000000000000}
P 32 шестнадцатеричные цифры, разделенные дефисом, заключены в скобки (00000000-0000-0000-0000-000000000000)
X Четыре шестнадцатеричные значения, заключенные в скобки, где четвертое значение является подмножеством из восьми шестнадцатеричных значений, которые также заключены в скобки {0x00000000,0x0000,0x0000,{0x00,0x00,0x00,0x00,0x00,0x00,0x00;0x00}}

Метод создает FormatException, если не удается успешно проанализировать строку. Ниже приведены некоторые причины, по которым это может произойти:

  • input содержит символы, которые не являются частью шестнадцатеричного набора символов.

  • input слишком много или слишком мало символов.

  • input не входит в один из форматов, распознаваемых методом ToString, и указан в предыдущей таблице.

Используйте метод TryParse для перехвата любых неудачных операций синтаксического анализа без необходимости обрабатывать исключение.

Применяется к