我非常需要一个随机文件生成器,生成一个真正的随机,不可压缩虚拟文件。随机文件生成器(再次!)
我结束了这个delphi代码。它工作,但它是痛苦sloooow
var
Buf : Integer;
TheFile : TFileStream;
begin
TheFile := TFileStream.Create(FileName, fmCreate OR fmOpenReadWrite);
with TheFile do
begin
for i := 0 to FileSize do // Iterate
begin
Buf := Random(999999) * i;
WriteBuffer(Buf, SizeOf(Buf));
end; // for
end; // with
end,
我的问题是:是否有快速随机文件,我可以使用发电机?无论Delphi代码和/或命令行工具都可以接受的,只要:
- 我可以毫不手动干预在Windows 运行它(我需要为我的测试中,不干预是允许的)
- 这是产生快速
- 文件是不可压缩(即压缩生成的文件导致没有节省空间)
编辑对于那些有兴趣,我申请我收到这里made this function的建议,它的速度不够快& 7zip的具有硬时间压缩生成的数据。
剖析你的代码并找出它花费的最多时间。 – japreiss 2012-04-18 19:17:10
他可能更适合使用CryptoAPI填充用于写入文件的缓冲区。有一些C代码 - http://msdn.microsoft.com/en-us/library/aa382048.aspx这是一个很好的起点 – Petesh 2012-04-18 19:18:25
Buf是什么类型?我是什么类型的?终止是否应该是'FileSize-1'? – 2012-04-18 19:21:07