Java中如何将文本追加到文件呢?
下文笔者讲述将文本追加到文件上的方法分享,如下所示
文本追加到文件的实现思路:
使用Files.write和StandardOpenOption.APPEND
可将文本追加到文件中
try {
// Create file if doesn't exist, write to it
// If file exist, append it
Files.write(Paths.get("app.log"), "Hello World".getBytes(),
StandardOpenOption.CREATE, StandardOpenOption.APPEND);
} catch (IOException x) {
//...
}
Files.write
package com.java265; import java.io.IOException; import java.nio.charset.Charset; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Paths; import java.nio.file.StandardOpenOption; import java.util.Arrays; import java.util.list; public class FileExample { public static void main(String[] args) { Charset utf8 = StandardCharsets.UTF_8; List<String> list = Arrays.asList("第一行信息", "第二行信息"); try { Files.write(Paths.get("app.log"), list, utf8, StandardOpenOption.CREATE, StandardOpenOption.APPEND); } catch (IOException x) { System.err.format("IOException: %s%n", x); } } }
BufferedWriter
启用append模式 append true作为第二个参数传递给FileWriter 。
package com.java265;
import java.io.BufferedWriter;
import java.io.FileWriter;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
public class BufferedWriterExample {
public static void main(String[] args) {
List<String> list = Arrays.asList("第一行信息", "第二行信息");
// append mode
try (FileWriter writer = new FileWriter("app.log", true);
BufferedWriter bw = new BufferedWriter(writer)) {
for (String s : list) {
bw.write(s);
bw.write("\n");
}
} catch (IOException e) {
System.err.format("IOException: %s%n", e);
}
}
}
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


