如何从文本文件创建 MD5 哈希摘要?
我想使用 C# 创建文本文件的 MD5 哈希值。我怎样才能做到这一点?
更新:感谢大家的帮助。我最终决定使用以下代码 -
// Create an MD5 hash digest of a file
public string MD5HashFile(string fn)
{
byte[] hash = MD5.Create().ComputeHash(File.ReadAllBytes(fn));
return BitConverter.ToString(hash).Replace("-", "");
}
Using C#, I want to create an MD5 hash of a text file. How can I accomplish this?
Update: Thanks to everyone for their help. I've finally settled upon the following code -
// Create an MD5 hash digest of a file
public string MD5HashFile(string fn)
{
byte[] hash = MD5.Create().ComputeHash(File.ReadAllBytes(fn));
return BitConverter.ToString(hash).Replace("-", "");
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
这是我目前正在使用的例程。
Here's the routine I'm currently using.
简短而切题。
filename
是您的文本文件的名称:Short and to the point.
filename
is your text file's name:这可以通过带有重载的
GetHashCode
来实现,允许传递 filePath、StreamReader 或 Stream:用法:
或者:
This can be achieved by
GetHashCode
with overloads, allowing to pass either a filePath, a StreamReader or a Stream:Usage:
Or:
这是一个不需要将整个文件读入内存的 .NET 标准版本:
您可以使用上面显示的方法将 byte[] 数组转换为字符串。另外:您可以将第三行中的“MD5”更改为SHA1、SHA256等来计算其他哈希值。
Here is a .NET Standard version that doesn't require reading the entire file into memory:
You can convert the byte[] array into a string using the methods shown above. Also: You can change "MD5" in the third line to SHA1, SHA256, etc. to calculate other hashes.