使用Commons IO写入文件中的新行?

时间:2013-10-14 13:41:14

标签: java file-io apache-commons

我知道

FileUtils.writeStringToFile(myfile.txt, "my string", true);

将'my string'添加到myfile.txt的末尾,所以它看起来像

previous stringsmy string

但有没有办法使用Commons IO将字符串写入文件中的新行,将文件更改为

previous strings
my string

3 个答案:

答案 0 :(得分:7)

Java使用\n标记新行,请尝试使用:

FileUtils.writeStringToFile(myfile.txt, "\nmy string", true);

答案 1 :(得分:3)

声明

final String newLine = System.getProperty("line.separator");

并在通话中FileUtils.writeStringToFile(myfile.txt, yourVariable+newLine, true);

我使用变量,所以这对我来说更有用

答案 2 :(得分:2)

除了上述回应之外;

如果你没有大文件,你可以写:

List<String> lines = Files.readAllLines(Paths.get(myfile.txt), StandardCharsets.UTF_8);
lines.add("my string");
Files.write(Paths.get(myfile.txt), lines, StandardCharsets.UTF_8);  

通常可以在文件中间添加新行

List<String> lines = Files.readAllLines(Paths.get(myfile.txt)), StandardCharsets.UTF_8);
lines.add(6, "my string"); // for example
Files.write(Paths.get(myfile.txt), lines, StandardCharsets.UTF_8);