Мне нужен способ создания файла, содержащего случайные биты, в Java. Что создаст случайный файл быстрее всего? Я хочу создавать файлы любого указанного размера, содержащие случайные биты. Я хочу иметь возможность создать файл размером 2 ГБ за считанные минуты (если возможно, менее минуты). Техника, которую я сейчас использую, требует нескольких часов для обработки 2 ГБ:
Код: Выделить всё
...
private static Random r = new Random();
private static int rand(int lo, int hi) {
int n = hi - lo + 1;
int i = r.nextInt() % n;
if (i < 0) {
i = -i;
}
return lo + i;
}
...
fos = new FileOutputStream(hdFiller);
for(long i = 0; i < maxFileSize; i++) {
int idx = rand(0,32);
fos.write(idx);
}
fos.close();
...
Должен быть способ сделать это быстрее, возможно, даже менее чем за минуту для 2 ГБ.
Спасибо.
Подробнее здесь:
https://stackoverflow.com/questions/119 ... es-in-java