使用java.util.logging.Logger时如何在文本文件中写入日志

我遇到一种情况,我想将我创建的所有日志写入文本文件。

我们正在使用java.util.logging.Logger API生成日志。

我试过了:

private static Logger logger = Logger.getLogger(className.class.getName());

FileHandler fh;

fh = new FileHandler("C:/className.log");

logger.addHandler(fh);

但是仍然只能在控制台上获取我的日志。

回答:

试试这个样本。这个对我有用。

public static void main(String[] args) {  

Logger logger = Logger.getLogger("MyLog");

FileHandler fh;

try {

// This block configure the logger with handler and formatter

fh = new FileHandler("C:/temp/test/MyLogFile.log");

logger.addHandler(fh);

SimpleFormatter formatter = new SimpleFormatter();

fh.setFormatter(formatter);

// the following statement is used to log any messages

logger.info("My first log");

} catch (SecurityException e) {

e.printStackTrace();

} catch (IOException e) {

e.printStackTrace();

}

logger.info("Hi How r u?");

}

在MyLogFile.log产生输出

Apr 2, 2013 9:57:08 AM testing.MyLogger main  

INFO: My first log

Apr 2, 2013 9:57:08 AM testing.MyLogger main

INFO: Hi How r u?

编辑:

要删除控制台处理程序,请使用

logger.setUseParentHandlers(false);

因为ConsoleHandler已向父记录器注册,所有记录器都源自该记录器。

以上是 使用java.util.logging.Logger时如何在文本文件中写入日志 的全部内容, 来源链接: utcz.com/qa/425813.html

回到顶部