Java文件写入,换行
posted @   sevennight  阅读(12256)  评论(0编辑  收藏  举报

复制代码
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+"\r\n");//写入文件
            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下的文本文件换行符:\r\n
linux/unix下的文本文件换行符:\r
Mac下的文本文件换行符:\n

 

二、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();//关闭读写流
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示