Android デバイスで指定されたサイズの (大きい) ファイルを割り当てる必要があります。
次のようにすると、ほとんどのデバイスで時間がかかりません。
RandomAccessFile fileStream = new RandomAccessFile("test.txt", "rw");
fileStream.seek(FILE_SIZE - 1);
fileStream.write(0);
残念ながら、ストレージに fat32 を使用する 2 つのデバイスでは、操作が非常に遅いようです (2GB のファイルで 90 ~ 100 秒)。
java.nio も使用してみましたが、同じ結果が得られます。
FileOutputStream fos = new FileOutputStream(f);
FileChannel fc = fos.getChannel();
fc.position(FILE_SIZE - 1);
fc.write(ByteBuffer.wrap(new byte[]{0}));
fos.close();
これら2つのデバイスでこの操作を高速化する方法はありますか?