Log 打印工具类

package com.xxx.patchgen.utils;

import java.io.File;
import java.io.FileWriter;
import java.util.Calendar;



public class LogPrinter {
	private static StringBuilder Logs = new StringBuilder();
	private static boolean hasError = false; 
	
	public static void resetLogger(){
		hasError = false;
		Logs.delete(0, Logs.length());
	}
	
	public static void info(int level,String log){
		if (hasError)
			return;
		String base = "";
		for (int i = 0; i < level; i++) {
			base+="	";
		}	
		Logs.append(base+log+"\n");
	}

	public static void error(String log){
		if (hasError)
			return;
		Logs.append("\n"+log+"\n");
		//writeLog();
		//System.exit(1);
		hasError = true;
	}
	
	public static void writeLog(String fileName,String filePath){
		stringToFile(Logs.toString(), filePath, "["+getTime()+"]-"+fileName);
	}
	
	private static String getTime(){
		Calendar calendar  = Calendar.getInstance();
		int year = calendar.get(Calendar.YEAR);
		int month = calendar.get(Calendar.MONTH)+1;
		int day = calendar.get(Calendar.DAY_OF_MONTH);
		int hour = calendar.get(Calendar.HOUR_OF_DAY);
		int min = calendar.get(Calendar.MINUTE);
		int sec = calendar.get(Calendar.SECOND);
		return Integer.valueOf(year+""+(month<10?"0"+month:month)+(day<10?"0"+day:day))+"."+
			Integer.valueOf(hour+""+(min<10?"0"+min:min)+(sec<10?"0"+sec:sec));
	}

	public static boolean hasError() {
		return hasError;
	}
	
	public static String getLog(){
		return Logs.toString();
	}
	
	public static void stringToFile(String content, String filePath, String fileName) {
		try{
			File sqlFilePath = new File(filePath);
			if(!sqlFilePath.exists()){
				sqlFilePath.mkdirs();
			}
			File file = new File(sqlFilePath.getAbsolutePath()+"/"+fileName);
			if (!file.exists()){
				file.createNewFile();
			}
			FileWriter fileWriter = new FileWriter(file);
			fileWriter.append(content+"\n\n\n");
			fileWriter.close();
		}catch (Exception e){
			e.printStackTrace();
		}
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值