写日志文件

package sentmail;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class Logger {
    private String logsDir;
    private String logName;
    private String logTime;

    public Logger(){
        this.logsDir = "C:\\Users\\coremail\\Desktop\\爬虫\\logs";
        // 创建 logs 目录
        File file = new File(logsDir);
        if (!file.isDirectory()){
            file.mkdir();
        }

        // 创建带日期的日志文件
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        this.logName = logsDir + "\\log_" + sdf.format(new Date()) + ".log";

        // 日志开头的时间
        SimpleDateFormat sfTime = new SimpleDateFormat("HH:mm:ss");
        this.logTime = sfTime.format(new Date());
    }

    /**
     * 共享的方法 info、warning、error写入日志都会调用这个方法来写入
     * @param logContent
     */
    public void shareWriteIntoLogFile(String logContent){
        try{
            FileOutputStream fos = new FileOutputStream(logName, true);
            byte bte[] = logContent.getBytes();
            fos.write(bte);
            fos.flush();
            fos.close();
        } catch (IOException e){
            e.printStackTrace();
        }
    }

    /**
     * info级别日志
     * @param content
     */
    public void info(String content){
        String logContent = "[" + logTime + "] Info: " + content + "\n";
        shareWriteIntoLogFile(logContent);
    }

    /**
     * 警告日志
     * @param content
     */
    public void warning(String content){
        String logContent = "[" + logTime + "] Warning: " + content + "\n";
        shareWriteIntoLogFile(logContent);
    }

    /**
     * 错误日志
     * @param content
     */
    public void error(String content){
        String logContent = "[" + logTime + "] Error: " + content + "\n";
        shareWriteIntoLogFile(logContent);
    }
}


猜你喜欢

转载自blog.51cto.com/11732619/2677233