GUID和UUID

GUID,英文全称为 Global Unique Identifier,意为全局唯一标识符,UUID,英文全称为 Universally Unique Identifier,意为通用唯一标识符,都具有唯一性,GUID也是微软对UUID是的实现。

UUID

UUID,通用唯一标识码,作为分布式运算环境的一部分,是一个作用于计算机体系中识别信息的128位标识符标准。

在UUID标准中规定了UUID全长位128位,表示为32个数字,在表现形态上展现为16进制数字,以特定的长度分割,其中用连字符 - 分割为5组数字,长度为 8-4-4-4-12,形式为 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx 总共36个字符。

GUID

GUID,全局唯一标识码,本质上为UUID标准,由微软根据UUID标准变种实现得到,所以在形式上和UUID表现完全一致。如:{21EC2020-3AEA-1069-A2DD-08002B30309D}。

GUID的主要目的是产生完全唯一的数字。在理想情况下,任何计算机都不会生成两个相同的GUID。GUID的总数也足够大,达到了2^128^(3.4×1038)个,所以随机生成两个相同GUID的可能性是非常小的,但并不为0。所以,用于生成GUID的算法通常都加入了非随机的参数(如时间),以保证这种重复的情况不会发生。

C#代码

使用C#代码可以很容易的生成并使用GUID,C#代码中提供了 Guid 类型,并且内置了很多方法,例如 NewGuid() 可以直接生成一个全新的GUID,同时提供了多种格式化格式。

var guid = Guid.NewGuid();
var guidStr = guid.ToString();

其中的 ToString() 方法提供了多个参数支持,用于输出不同格式的GUID字符串,包括了 D,N,B,P和X。

规范 返回格式
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}}

对于需要快速生成GUID,还可以使用GUID生成器来生成。

发布时间:2025-07-10
其他阅读

TypeScript中的数组操作

我们在编码时,总会用到数组/列表这种类型,用于在单个对象中存储多个内容。在 TypeScript 中,也已经内置了该类型,方便我们来使用。

查看原文

LinqPad 8 分享下载

LinqPad是一个 .Net 快速验证工具,使得.Net开发者可以不借助 Visual Studio 就可以快速验证想法,毕竟vs冷启动和创建项目耗时久,负担大。本文分享一个LinqPad学习版,可直接下载使用。

查看原文

自驾环游抚仙湖

抚仙湖作为云南第三大湖,以前只去过北边几个开发比较好的区域,周末闲来无事,准备自驾完整地环湖一圈,从呈贡出发,沿着国道开到澄江,然后环湖一圈,经过江川后再到澄江,吃完饭后回到呈贡。

查看原文

Winform中设置控件边框

本文将会介绍在Winform中如何设置控件的边框,可应用于Form和Panel等。

查看原文

Js文件上传

文件上传是一个前端比较常见的功能,无论是以前的MVC客户端,还是现代化SPA客户端中,但万变不离其宗,其内核基本不变,本文就此讨论简单文件上传(以图片为例子)。

查看原文