import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
public class WriterOrReaderTxt {
// 写文件
private void writerTxt() {
BufferedWriter fw = null;
try {
File file = new File("D://text.txt");
fw = new BufferedWriter(new OutputStreamWriter(new FileOutputStream(file, true), "UTF-8")); // 指定编码格式,以免读取时中文字符异常
fw.append("我写入的内容");
fw.newLine();
fw.append("我又写入的内容");
fw.flush(); // 全部写入缓存中的内容
} catch (Exception e) {
e.printStackTrace();
} finally {
if (fw != null) {
try {
fw.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
// 读文件
private void readTxt() {
String filePath = WriterOrReaderTxt.class.getResource("").getPath().replace("file:", "")
+ "/test.txt"; // 文件和该类在同个目录下
BufferedReader reader = null;
try {
reader = new BufferedReader(new InputStreamReader(new FileInputStream(filePath), "UTF-8")); // 指定读取文件的编码格式,要和写入的格式一致,以免出现中文乱码,
String str = null;
while ((str = reader.readLine()) != null) {
System.out.println(str);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}