我搜索并查看了多个这样的问题,但我的问题与我发现的任何问题都不同。我看过Java Docs。
如何打开与此 c 文件等效的文件:
stream1 = fopen (out_file, "r+b");
一旦我从文件中完成了部分读取,无论文件中有多少字节,第一次写入都会使下一次读取返回 EOF。
本质上,我想要一个不这样做的文件 I/O 流。我要做的全部目的是替换当前文件中现有文件中的字节。在执行读取->写入之前,我不想复制或制作副本。
您可以使用RandomAccessFile。
正如 Perception 提到的,您可以使用 RandomAccessFile。此外,在某些情况下,FileChannel可能会更好地工作。我已经使用这些来处理二进制文件数据并取得了巨大的成功。
编辑:您可以使用 RandomAccessFile 对象从 RandomAccessFile 对象中获取 FileChannel getChannel
。