Java以UTF-8格式读写及追加写文件示例

package test;

import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;

public class FileHelper {
	
	public static void readFile(File file) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(file), "UTF-8"));
		String line = null;   
		while ((line = br.readLine()) != null) {
			System.out.println(line);
		}  
	}
	
	public static void writeFile(File file, String content) throws IOException {
		FileOutputStream fos = new FileOutputStream(file);
		OutputStreamWriter osw = new OutputStreamWriter(fos, "UTF-8");
		osw.write(content);
		osw.flush();
	}
	
	public static void appendFile(File file, String content) throws IOException {
		OutputStreamWriter out = new OutputStreamWriter(
		        new FileOutputStream(file, true), // true to append
		        "UTF-8"
				);
		out.write(content);
		out.close();
	}
	
	// main for test
	public static void main(String[] args) throws IOException {
		File file = new File("D:\\test.txt");
		writeFile(file, "");
		appendFile(file, "你好");
		appendFile(file, "!!!");
		readFile(file);
	}
}
posted @ 2018-06-25 15:41  zifeiy  阅读(7768)  评论(0编辑  收藏  举报