import java.io.File;
import java.text.SimpleDateFormat;
import java.util.Date;
public class Demo {
/**
* 日志目录
*/
private static final String LOG_FOLDER = "d:/log";
/**
* 上次日志生成时间
*/
private static Date LAST_DATE = null;
/**
* 当前日志文件
*/
private static File CURRENT_LOG_FILE = null;
/**
* 格式化日期
*/
private static final SimpleDateFormat SDF = new SimpleDateFormat("yyyy_MM_dd_hh_mm_ss");
/**
* 一小时
*/
private static String FtpUrl = ftp://yingwen:123@192.168.20.88:21/;
/**
*要上传至FTP服务器地址
*
/
private static final long HOUR = 60 * 60 * 1000;
//OA_2009_06_28_09_05_00.log
/**
* 记录日志
*/
public static final void log(String message) {
if(LAST_DATE == null) {// 如果第一次记录
// 当前日期
LAST_DATE = new Date();
// 生成文件
CURRENT_LOG_FILE = new File(LOG_FOLDER, "OA_"+SDF.format(LAST_DATE)+".log")); //生成的文件格式为--
[ OA_2010_06_29_09_17_14.log]
try {
FtpTool ftool = new FtpTool(FtpUrl); //此类用来ftp上传和下载用
ftool.login();
ftool.upload(LOG_FOLDER,"OA_"+SDF.format(LAST_DATE)+".log"); //第一个参数是本地路径,第二参数为要上传的文件名称
} catch (IOException e) {
e.printStackTrace();
}
} else {// TODO 检查时间
if(System.currentTimeMillis() - LAST_DATE.getTime() >= 12 * HOUR) {
// 生成新文件
LAST_DATE = new Date();
CURRENT_LOG_FILE = new File(LOG_FOLDER, SDF.format(LAST_DATE));
}
}
// TODO 记录日志
// TODO 记录格式
_log(CURRENT_LOG_FILE, message);
}
/**
* 写入文件
* @param logFile
* @param message
*/
private static final void _log(File logFile, String message) {
// TODO 文件写入
// 写入到文件中
}
}