c# - 根据字符串生成Guid

标签 c# .net guid

<分区>

我们想根据一些随机字符串生成一个 Guid。目标是让给定字符串的 Guid 始终相同。

明确一点,我的字符串没有格式化为 guid,它可能是“Toto”作为“asdfblkajsdflknasldknalkvkndlskfj”。

我知道这会生成一些与我的输入字符串一样独特的 Guid,但这不是这里的问题。

最佳答案

由于 Guid 和 MD5 哈希都是 128 位整数,您可以使用给定字符串的 MD5 作为 Guid。它将一致地重现相同的值:

using (System.Security.Cryptography.MD5 md5 = System.Security.Cryptography.MD5.Create())
{
    byte[] inputBytes = System.Text.Encoding.ASCII.GetBytes(input);
    byte[] hashBytes = md5.ComputeHash(inputBytes);

    Guid g = new Guid(hashBytes);
}

关于c# - 根据字符串生成Guid,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49628262/

相关文章:

c# - WCF 安全实现设计问题

dll - 无法从程序集 "...\Microsoft.Search.Interop.dll"中嵌入互操作类型,因为它缺少GuidAttribute属性

.net - .NET 4 GUID 是如何生成的?

c# - 动态添加js到asp.net文件

c# - 防止C#中的重复代码

c# - 如何获取 MessageBox 按钮标题?

c# - 在使用时对域对象进行更改

c# - 获取使用大端格式 C# 进行编码的指南

c# - 通过反射调用派生类的方法。可能与否?

c# - 包含 '.' 的 Excel 列名称转换为 '#'