如何覆盖Java中特定位置的文件内容? [复制]
Posted
技术标签:
【中文标题】如何覆盖Java中特定位置的文件内容? [复制]【英文标题】:How to overwrite file content at specific position in Java? [duplicate] 【发布时间】:2019-05-04 08:52:39 【问题描述】:我正在处理大文件,我想覆盖特定位置的内容文件,如下所示:
helloworld123456
在第 6 个单词处覆盖新内容“internet”
hellointernet456
非常感谢
编辑: RandomAccessFile 可以直接查找和写入文件及其工作
randomAccessFile.seek(5);
randomAccessFile.write("internet".getBytes());
【问题讨论】:
读取文件,修改内存,写入文件 但我想直接写入文件,它的文件非常大 除非文件是可搜索的,否则文件 I/O 不是这样工作的 如果它是一个“大”文件,那么您将需要部分读取,进行您需要的任何修改并写入第二个文件,完成后,删除原始文件并将第二个文件重命名为它的位置 我找到了做到这一点的方法:D 通过使用 RandomAccessFile 我可以找到特定的位置,我知道它的效果如何,但它的工作原理,谢谢你的回答 randomAccessFile.seek(5); randomAccessFile.write("internet".getBytes()); 【参考方案1】:在这里回答:
您不能将数据插入文件。您可以使用 RandomAccessFile 覆盖特定位置的数据。但是,插入需要更改其后的所有数据。
how to write content in a Specific position in a File
【讨论】:
以上是关于如何覆盖Java中特定位置的文件内容? [复制]的主要内容,如果未能解决你的问题,请参考以下文章