繁体   English   中英

访问同一文件以读取和写入随机位置

[英]Access the same file for read and write random position

首先,我没有Java方面的丰富经验,并且做了很多研究。 请问一个具体问题。 谢谢

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

罗伯托

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

例:

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM