IO流之标准输出流

IO流之标准输出流

改变输出方向

以下代码使用PrintSream往硬盘写文件:

package com.javalearn.io.standard;

import java.io.FileOutputStream;
import java.io.PrintStream;

public class TestForPrintStream {
    public static void main(String[] args) throws Exception{
        PrintStream printStream = new PrintStream(new FileOutputStream("file1"));
        System.setOut(printStream);  // 输出方向默认为控制台,现在把输出方向从控制台改为文件
        System.out.println("我滴个妈");
    }
}

输出文件内容:

我滴个妈

基于标准输出流的log工具

以下代码使用PrintStream编写记录系统操作的log工具:

package com.javalearn.io.log;

import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintStream;
import java.text.SimpleDateFormat;
import java.util.Date;

public class TestForLog {
    public static void main(String[] args) {
        Logger.log("打开QQ");
    }
}

class Logger {
    public static void log(String msg) {
        try {
            PrintStream out = new PrintStream(new FileOutputStream("file1",true));
            System.setOut(out);
            Date nowTime = new Date();  //获取时间
            SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss SSS");  // 定义格式:【年-月-日 时:分:秒 毫秒】
            String strTime = sdf.format(nowTime);  //时间+格式
            System.out.println(strTime+":"+msg);
        } catch (FileNotFoundException e) {
                e.printStackTrace();
        }

    }

}

输出文件结果:

我滴个妈
2021-12-05 11:16:00 895:打开QQ

posted on 2021-12-05 11:20  菜小疯  阅读(25)  评论(0编辑  收藏  举报