Мне очень нужен генератор случайных файлов, который генерирует действительно случайных, не сжимаемых файлов-манекенов.Генератор случайных файлов (снова!)
Я закончил с этим кодом 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, без ручного вмешательства (мне это нужно для моих тестов, никакого вмешательства не допускается)
- Это быстро
- файлы генерируемый несжимаемая (то есть. сжатие сгенерированных файла результатов не экономии пространства)
EDIT Для тех, кто заинтересован, я применил совет, который я получил здесь и made this function, это достаточно быстро & 7zip имеет трудное время сжатия сгенерированные данные.
Профилируйте свой код и узнайте, где он проводит больше всего времени. – japreiss
Он, вероятно, лучше использовать CryptoAPI, заполняя буфер, который используется для записи в файл. Существует некоторый код C - http://msdn.microsoft.com/en-us/library/aa382048.aspx, который является хорошей отправной точкой – Petesh
Какой тип Buf? Какой тип я? Должно ли окончание быть «FileSize-1»? –