我想知道是否可以在带有
Java的文件中添加一行.
例如myFile:
- 1: line 1
- 2: line 2
- 3: line 3
- 4: line 4
我想在第三行添加一个行狐狸示例,所以它看起来像这样
- 1: line 1
- 2: line 2
- 3: new line
- 4: line 3
- 5: line 4
我发现了如何在空文件或文件末尾添加文本但我不知道如何在文本中间执行它而不删除行.
另一种方法是将第一个文件分成两部分,然后创建一个文件,将第一部分添加到新部分,然后添加第二部分,因为感觉有点极端?
谢谢
解决方法
在Java 7中,您可以使用Files和Path类,如下所示:
- List<String> lines = Files.readAllLines(path,StandardCharsets.UTF_8);
- lines.add(position,extraLine);
- Files.write(path,lines,StandardCharsets.UTF_8);
举个例子:
- Path path = Paths.get("C:\\Users\\foo\\Downloads\\test.txt");
- List<String> lines = Files.readAllLines(path,StandardCharsets.UTF_8);
- int position = lines.size() / 2;
- String extraLine = "This is an extraline";
- lines.add(position,StandardCharsets.UTF_8);