通过Java将文本插入现有文件

我想创建一个用于编辑文本文件的简单程序(用Java),尤其是一个可以在文本文件中的任意位置插入任意文本的程序。此功能是我当前正在编写的一个较大程序的一部分。

阅读有关java.util.RandomAccessFile的描述,似乎在文件中间执行的任何写操作实际上都会覆盖现有内容。这是我要避免的副作用(如果可能)。

有没有简单的方法可以做到这一点?

提前致谢。


慕侠2389804
浏览 659回答 3
3回答

狐的传说

如果Java有一种存储映射文件的方法,那么您可以做的就是将文件扩展到新的长度,映射文件,将所有字节向下记忆到最后一个洞,然后将新数据写入该洞中。这在C语言中有效。从未在Java中尝试过。我刚刚想到的另一种方法是使用随机文件访问来执行相同的操作。寻找到最后-1 MB读取1 MB将其写入原始位置+间隙大小。对于文件开始处的每个前1 MB重复此操作。到达所需的间隙位置时停止。使用较大的缓冲区大小可提高性能。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java