访问相同的文件以进行读写随机位置

时间:2015-12-18 11:56:44

标签: java randomaccessfile

首先说我没有很好的Java经验,而且我做了很多研究。我想请你问一个具体的问题。 谢谢

我需要打开一个文件进行读写,我从中读取和写入一个512字节的块。 文件是固定长度的,要写入的信息将与其他现有信息重叠。 例如,我读取文件的前512个字节,如果它包含某些值,则将块512写入位置2048。 我尝试使用FileOutputStreamFileOutputStream,但每次使用UIDocumentInteractionController打开时,都会删除该文件的内容。 它可以用Java完成吗?

罗伯特

1 个答案:

答案 0 :(得分:0)

使用FileChannel;它允许随机访问文件的任何部分,读取,写入或两者的任意组合。

示例:

final Path path = Paths.get("path/to/the/file");
final FileChannel channel = FileChannel.open(path, relevantOptions);

可选地,之后,您可以使用.map()方法。