下面是详细讲解“C# 中GUID生成格式的四种方法”的完整攻略。
什么是GUID
GUID(全局唯一标识符)是一种由 Microsoft 定义的格式唯一标识符,被广泛用于分布式计算环境中的软件构件、数据表和数据库对象等的标识。GUID 是一种伪随机数,一般由 32 个 16 进制数字构成,用连字符分为五段,形式为“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”。
C# 中GUID的生成方法
C# 中提供了多种方法来生成 GUID,包括以下四种:
1. Guid.NewGuid()
Guid.NewGuid()
是最常见的生成 GUID 的方法,它返回一个新的 GUID。
Guid guid = Guid.NewGuid();
2. Guid(string)
Guid(string)
可以将一个字符串形式的 GUID 转换为一个对象实例。
Guid guid = new Guid("fdba0c84-c45b-4f07-9fc3-6a73a0e25e38");
3. Guid(byte[])
Guid(byte[])
可以将一个字节数组形式的 GUID 转换为一个对象实例。
byte[] bytes = new byte[16] { 0x6b, 0x5c, 0xff, 0xc3, 0x0c, 0x87, 0xec, 0x42, 0x99, 0xa9, 0x51, 0x4a, 0x66, 0x26, 0x2d, 0x83 };
Guid guid = new Guid(bytes);
4. Guid(int, short, short, byte, byte, byte, byte, byte, byte, byte, byte)
Guid(int, short, short, byte, byte, byte, byte, byte, byte, byte, byte)
可以根据指定的参数值生成一个对象实例。
Guid guid = new Guid(0xfdba0c84, 0x5bc4, 0x074f, 0x9f, 0xc3, 0x6a, 0x73, 0xa0, 0xe2, 0x5e, 0x38);
示例说明
接下来,我们通过两个示例来说明生成 GUID 的过程及这四种方法的使用。
示例一:生成一组随机的 GUID
using System;
class Program
{
static void Main()
{
Guid guid1 = Guid.NewGuid();
Console.WriteLine("Generated GUID: " + guid1);
Guid guid2 = new Guid("fdba0c84-c45b-4f07-9fc3-6a73a0e25e38");
Console.WriteLine("Parsed GUID: " + guid2);
byte[] bytes = new byte[16] { 0x6b, 0x5c, 0xff, 0xc3, 0x0c, 0x87, 0xec, 0x42, 0x99, 0xa9, 0x51, 0x4a, 0x66, 0x26, 0x2d, 0x83 };
Guid guid3 = new Guid(bytes);
Console.WriteLine("Parsed GUID from bytes: " + guid3);
Guid guid4 = new Guid(0xfdba0c84, 0x5bc4, 0x074f, 0x9f, 0xc3, 0x6a, 0x73, 0xa0, 0xe2, 0x5e, 0x38);
Console.WriteLine("Generated GUID from parameters: " + guid4);
Console.ReadKey();
}
}
以上代码通过调用不同的生成 GUID 方法,生成了一组随机的 GUID,并将其输出到控制台。
示例二:从字符串中提取 GUID
using System;
class Program
{
static void Main()
{
string input = "The GUID is fdba0c84-c45b-4f07-9fc3-6a73a0e25e38.";
Guid guid = Guid.Empty;
int start = input.IndexOf('{');
int end = input.IndexOf('}');
if (start >= 0 && end > start)
{
string guidStr = input.Substring(start + 1, end - start - 1);
guid = Guid.Parse(guidStr);
}
Console.WriteLine("Extracted GUID: " + guid);
Console.ReadKey();
}
}
以上代码从字符串中提取出 GUID,并将其输出到控制台。其中,Guid.Parse()
方法通过解析字符串生成 GUID 对象。如果字符串格式不正确,将导致解析失败并抛出异常。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C# 中GUID生成格式的四种方法 - Python技术站