我知道我可以MD5一个完整的文件,这是而不是我想做的。
我想得到标题和实际的文件内容。
我知道每个文件都有一个标题,然后有内容。我想比较两个文件的实际内容,以确定内容是否相同,为此,我将对内容使用简单的md5。
我的问题是,如何将标题与内容分开,以便进行计算?-为了更清楚地说明这一点,我需要知道的是偏移;它们对所有文件都是相同的还是不同的,如果不同,我如何找到细节,这样我才能做到这一点。(我知道漱口的事,但找不到)。
using (var md5 = MD5.Create())
{
using (var stream = File.OpenRead(filename))
{
return md5.ComputeHash(SplitContentFromHeader(stream));
}
}
SplitContentFromHeader(stream)
{
.. do the thing and return the shortened stream
}发布于 2015-09-26 16:03:51
我认为您希望使用.Seek和.Read方法。参见这里的文档:https://msdn.microsoft.com/en-us/library/system.io.filestream.seek(v=vs.110).aspx和这里的https://msdn.microsoft.com/en-us/library/system.io.stream.read(v=vs.110).aspx
Read file from position在这里复制了一个类似的问题,尝试如下所示:
using (FileStream fs = new FileStream(@"file.txt", FileMode.Open, FileAccess.Read))
{
fs.Seek(100, SeekOrigin.Begin);
byte[] b = new byte[fs.Length - 100];
fs.Read(b, 0, (int)(fs.Length - 100));
string s = System.Text.Encoding.UTF8.GetString(b);
}https://stackoverflow.com/questions/32798990
复制相似问题