在Java中,写入文件中间的字节的最佳方式是什么?
在文件中间进行读写操作与Java中使用RandomAccessFile
一样简单。
RandomAccessFile
虽然名为随机访问文件,但更像是InputStream
和OutputStream
而不是File
。它允许你读取或定位文件中的bytes
,并从任意位置开始写入。
一旦你发现了这个类,如果你对常规文件I/O有基本的理解,使用起来非常容易。
下面是一个小例子:
public static void aMethod(){
RandomAccessFile f = new RandomAccessFile(new File("whereDidIPutTHatFile"), "rw");
long aPositionWhereIWantToGo = 99;
f.seek(aPositionWhereIWantToGo); // this basically reads n bytes in the file
f.write("Im in teh fil, writn bites".getBytes());
f.close();
}
我认为每次创建文件分块是最好的。当文件下载完成时再将它们连接在一起。现在我正在处理这个问题。
以写模式打开文件,而不截断它,定位到所需的偏移量,并写入所需的数据。只需注意文本/二进制模式即可。