MD5文件处理
大家早上好,
我正在用 C# 开发 MD5 文件完整性检查工具。
文件需要多长时间才能获得 MD5 校验和值? 例如,如果我尝试获取 2gb .mpg 文件,则每次大约需要 5 分钟以上。 这似乎太长了。
我只是不耐烦吗?
以下是我正在运行的代码
public string getHash(String @fileLocation)
{
FileStream fs = new FileStream(@fileLocation, FileMode.Open);
HashAlgorithm alg = new HMACMD5();
byte[] hashValue = alg.ComputeHash(fs);
string md5Result = "";
foreach (byte x in hashValue)
{
md5Result += x;
}
fs.Close();
return md5Result;
}
任何建议将不胜感激。
问候
Good morning all,
I'm working on an MD5 file integrity check tool in C#.
How long should it take for a file to be given an MD5 checksum value?
For example, if I try to get a 2gb .mpg file, it is taking around 5 mins+ each time.
This seems overly long.
Am I just being impatient?
Below is the code I'm running
public string getHash(String @fileLocation)
{
FileStream fs = new FileStream(@fileLocation, FileMode.Open);
HashAlgorithm alg = new HMACMD5();
byte[] hashValue = alg.ComputeHash(fs);
string md5Result = "";
foreach (byte x in hashValue)
{
md5Result += x;
}
fs.Close();
return md5Result;
}
Any suggestions will be appreciated.
Regards
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
请参阅this关于如何以最有效的方式计算文件哈希值。您基本上必须将
FileStream
包装到BufferedStream
中,然后将其输入到HMACMD5.ComputeHash(Stream)
重载中:See this on how to calculate file hash value in a most efficient way. You basically have to wrap
FileStream
into aBufferedStream
and than feed that intoHMACMD5.ComputeHash(Stream)
overload: