这是其占位符从https://forums.embarcadero.com/message.jspa?messageID=219481tfilestream.seek和偏移混乱
if FileExists(dstFile) then
begin
Fs := TFileStream.Create(dstFile, fmOpenReadWrite);
try
Fs.Seek(Max(0, Fs.Size-1024), soFromBeginning);
// alternatively:
// Fs.Seek(-1024, soFromEnd);
Http.Request.Range := IntToStr(Fs.Position) + '-';
Http.Get(Url, Fs);
finally
Fs.Free;
end;
end;
我不明白究竟是什么偏移和 为什么MAX(0,Fs.Size-1024)拍摄的一段代码 ,如果你去以下(代码)
// alternatively:
// Fs.Seek(-1024, soFromEnd);
究竟什么是“-1024” ......为什么总是使用1024/-1024? 并且会在单独的比赛中缓慢地完成比赛工作(我正在致力于 做一个下载管理和暂停恢复支持) 并且会用tmemmorystream替换tfilestream在上面的代码中有 对程序有任何影响?
如果它的问题:我用D2007和D2010
感谢梅森,+1的一个很好的和详细的答案。 我想使用memmory流,因为它具有的SaveToFile方法和TFileStream的犯规 – 2010-06-22 03:23:30
@omair:TFileStream的并不需要它,因为它已经与文件相关联。你基本上是用TFileStream来代替中间人。 – 2010-06-22 03:46:37
@ mason tfilestream将我们的数据保存在硬盘上,我的意思是在哪个位置? – 2010-06-22 09:08:39