作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试实现一种检测重复文件的方法。我有一个 MD5 散列方法(让我们忽略 MD5 已损坏的事实)如下:
using(MD5 hasher = MD5.Create())
using(FileStream fs = File.OpenRead("SomeFile"))
{
byte[] hashBytes = hasher.ComputeHash(fs);
string hashString = string.Join(string.Empty, hashBytes.Select(x => x.ToString("X2")));
}
string
出了
hashBytes
我可以简单地创建一个
Guid
像这样吗?
Guid hashGuid = new Guid(hashBytes);
最佳答案
MD5 哈希值和 Guid
本质上两者都表示 128 位二进制,所以:
Guid
是值类型意味着与 string
相比,您可以避免分配... Guid
)Guid
有语义在这里不会真正受到尊重/预期 Guid
默认格式与通常表示 MD5 哈希的方式不同 Guid
字节序是一团糟,所以如果你想在原始字节和任何文本表示之间获得:tread 非常小心;它是 不是 您的期望 关于c# - 从 MD5 散列而不是字符串创建 Guid 是否有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55533117/
我是一名优秀的程序员,十分优秀!