文件读取、写入

import java.io.File;
import java.io.InputStreamReader;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.FileInputStream;
import java.io.FileWriter;
import java.io.IOException;
/**
 * diff读取写入
 *
 * @author zc
 * @date 2018-12-04
 */
public class FileUtils {
	public static String read(String txtName) {
		BufferedReader br = null;
		StringBuffer sb = new StringBuffer();
		try {
			txtName = "E:/diff/" + txtName + ".txt";
			// 绝对路径或相对路径都可以,这里是绝对路径,写入文件时演示相对路径
			File filename = new File(txtName);
			if (!filename.exists()) {
				return "";
			}
			// 要读取以上路径的input。txt文件
			InputStreamReader reader = new InputStreamReader(new FileInputStream(filename));
			// 建立一个输入流对象reader
			br = new BufferedReader(reader);
			// 建立一个对象,它把文件内容转成计算机能读懂的语言
			String line = "";
			line = br.readLine();
			while (line != null) {
				sb.append(line); // 将读到的内容添加到 buffer中
				//sb.append("\n"); // 添加换行符
				line = br.readLine();// 一次读入一行数据
			}

		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				if (br != null) {
					br.close();
				}

			} catch (IOException e) {
				e.printStackTrace();
			}
		}

		return sb.toString();
	}

	public static void write(String content, String txtName) {
		try {
			txtName = "E:/diff/" + txtName + ".txt";
			File writename = new File(txtName);
			// 相对路径,如果没有则要建立一个新的txt文件
			writename.createNewFile();
			BufferedWriter out = new BufferedWriter(new FileWriter(writename));
			out.write(content);
			// \r\n即为换行
			out.flush(); // 把缓存区内容压入文件
			out.close();// 最后记得关闭文件
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public static void main(String[] args) {
		 System.out.println(read("diff"));
		 //write("a\r\n b\r\n", "diff");
	}
}

猜你喜欢

转载自blog.csdn.net/wuyepiaoxue789/article/details/84790046
今日推荐