Java 访问同一文件进行随机读写
首先说我在Java方面没有丰富的经验,我做了很多研究。我想问你一个具体的问题。 多谢各位 我需要打开一个用于读写的文件,从中我可以读写512字节的块。 该文件是固定长度的,要写入的信息将与其他现有文件重叠。 例如,我读取文件的前512字节,如果它包含某些值,则将块512写入位置2048。 我尝试使用Java 访问同一文件进行随机读写,java,randomaccessfile,Java,Randomaccessfile,首先说我在Java方面没有丰富的经验,我做了很多研究。我想问你一个具体的问题。 多谢各位 我需要打开一个用于读写的文件,从中我可以读写512字节的块。 该文件是固定长度的,要写入的信息将与其他现有文件重叠。 例如,我读取文件的前512字节,如果它包含某些值,则将块512写入位置2048。 我尝试使用FileInputStream和FileOutputStream但是每次使用FileOutputStream打开时,文件的内容都会被删除。 可以用Java完成吗 罗伯托使用;它允许以读、写或两者的任意
FileInputStream
和FileOutputStream
但是每次使用FileOutputStream
打开时,文件的内容都会被删除。
可以用Java完成吗
罗伯托使用;它允许以读、写或两者的任意组合方式随机访问文件的任何部分
例如:
final Path path = Paths.get("path/to/the/file");
final FileChannel channel = FileChannel.open(path, relevantOptions);
或者,在此之后,您可以使用
.map()
方法。谢谢您的提示,我不知道FileChannel。然而,我在互联网上看到一些例子,我首先必须用RandomAccessFile打开文件;不适用于Java7+,请参阅我的代码示例。