import java.io.BufferedWriter; import java.io.File; import java.io.FileWriter; import java.io.IOException; /** * 文件写入 * @author Administrator * */ public class TestReadAndWrite { public static void writerText(String path, String content) { File dirFile = new File(path); if (!dirFile.exists()) {//判断目录是否存在,不存在创建 dirFile.mkdir(); } try { //new FileWriter(path + "config.log", true) 设置true 在不覆盖以前文件的基础上继续写 BufferedWriter writer = new BufferedWriter(new FileWriter(path + "config.log", true)); writer.write(content+" ");//写入文件 writer.flush();//清空缓冲区数据 writer.close();//关闭读写流 System.out.println("写入成功"); } catch (IOException e) { e.printStackTrace(); } } public static void main(String[] args) { writerText("D:/", "2014-07-14 23:43:00 服务器IP:192.123.123.243 日志信息:后台登录验证码出现错误,错误代码500"); } }
写入文件换行方法:
一、windows和linux/unix平台中没有通用的换行符的,针对常用的系统,可以使用如下的转义符实现换行:
windows下的文本文件换行符:
linux/unix下的文本文件换行符:
Mac下的文本文件换行符:
二、BufferedWriter的newline()方法,可通用:
BufferedWriter writer = new BufferedWriter(new FileWriter(path + "config.log", true)); writer.write(content);//写入文件 writer.newLine();//换行 writer.flush();//清空缓冲区数据 writer.close();//关闭读写流
三、System.getProperty()方法
BufferedWriter writer = new BufferedWriter(new FileWriter(path + "config.log", true)); writer.write(content+System.getProperty("line.separator"));//写入文件***System.getProperty("line.separator")<--换行 writer.flush();//清空缓冲区数据 writer.close();//关闭读写流