取自here您還可以在其中找到其他方法。
創建一個部分文件流類,讀取您想要的大小並對其進行散列。
class PartialFileStream : FileStream
{
public PartialFileStream(string path, FileMode mode, long startPosition, long endPosition): base(path, mode)
{
base.Seek(startPosition, SeekOrigin.Begin);
ReadTillPosition = endPosition;
}
public long ReadTillPosition { get; set; }
public override int Read(byte[] array, int offset, int count)
{
if (base.Position >= this.ReadTillPosition)
return 0;
if (base.Position + count > this.ReadTillPosition)
count = (int)(this.ReadTillPosition - base.Position);
return base.Read(array, offset, count);
}
}
請注意MD5不再是一個安全的哈希算法 – oleksii 2011-05-18 07:45:15
我只用它來驗證該文件沒有在磁盤或內存中損壞,所以這不是一個問題。 – Satellite 2011-05-18 16:08:58