Java-如何将字符串插入到txt文件的某一行,比如line6

the*_*ves 2 java file filewriter

我想在.txt文件的特定位置插入一行.现在我知道的唯一方法是将整个文件作为数组读出,将给定的行放在正确的位置,然后将整个内容写回来.有没有更简单的方法来使用Java实现这一目标?我的目的是尽可能减少文件访问.

ass*_*ias 6

有没有更简单的方法来使用Java实现这一目标?

使用Java 7,除非您的插入点位于巨大文件的末尾,否则我只会执行以下操作:

List<String> lines = Files.readAllLines(path, StandardCharsets.UTF_8);
lines.add(position, extraLine);
Files.write(path, lines, StandardCharsets.UTF_8);
Run Code Online (Sandbox Code Playgroud)