Guid.Parse 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
重载
Parse(String, IFormatProvider) |
将字符串分析为值。 |
Parse(ReadOnlySpan<Char>, IFormatProvider) |
将字符的范围分析为值。 |
Parse(String) |
将 GUID 的字符串表示形式转换为等效 Guid 结构。 |
Parse(ReadOnlySpan<Char>) |
将表示 GUID 的只读字符范围转换为等效 Guid 结构。 |
Parse(String, IFormatProvider)
- Source:
- Guid.cs
- Source:
- Guid.cs
- Source:
- 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)
- Source:
- Guid.cs
- Source:
- Guid.cs
- Source:
- 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)
- Source:
- Guid.cs
- Source:
- Guid.cs
- Source:
- 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,通过使用“B”、“D”和“X”格式说明符调用 ToString(String) 方法,并将其转换为三个单独的字符串表示形式,然后调用 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>)
- Source:
- Guid.cs
- Source:
- Guid.cs
- Source:
- 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 的字节的只读范围。
返回
包含已分析的值的结构。
例外
注解
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 方法捕获任何不成功的分析操作,而无需处理异常。