日期:2014-05-20  浏览次数:20815 次

如何根据日期获取log4j的日志文件名?
log4j配置如下:
log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.logfile.File=${myApp.root}/WEB-INF/myApp.log
log4j.appender.logfile.DatePattern= '. 'yyyy-MM-dd

要求根据日期获取日志文件内容,比如输入 "2007-8-23 ",就将myApp.log.2003-08-23的内容显示出来。

已经写好了读取日志方法。
private   void   showLogs(String   logFileName){

      //从指定文件读取日志内容,已完成。

}

现在需要根据日期来获取文件名。
public   String   getLogFileName(String   curDate)   {

        String   fileName   =   " ";
//中间这部分怎么写?
        return   fileName;
}

新接触java,对些基础的还可以对付,对log4j实在不熟,希望大家帮忙。




------解决方案--------------------
你是要在更改了log4j的配置以后, 还可以正确地根据日期找到日志文件吗?

如果是这样,那要看log4j有没有提供相应的接口, 或者根据log4j来实现自己的\

否则根据不变的配置, 你已经知道文件名是什么样子, getLogFileName就相当好写了...
------解决方案--------------------
SimpleDateFormat sdf=new SimpleDateFormat( "yyyy-MM-dd ");
try {
fileName=sdf.format(sdf.parse(curDate));
} catch (ParseException e1) {
e1.printStackTrace();
}
------解决方案--------------------
org.apache.log4j 用法:

http://hbohuan.blog.163.com/blog/static/2084898200722704510356/
------解决方案--------------------
log4j常用来打印和存储日志文件的