0

我知道这个问题被问了数百次,但是我是编程的初学者(尝试了所有的建议,但都没有成功),并且希望更一步一步地解释如何解决这个问题。

我在我的程序中使用Java Loggers 而不是 System.out,如下所示:

    Logger logger = Logger.getLogger(TheNameOfMyProgram.class.getName());
    logger.log(Level.INFO, "The number A: " + numberA);
    logger.log(Level.INFO, "The number B: " + numberB);

这就是我得到的输出:

    Oct 25, 2013 11:43:02 PM mypackage.TheNameOfMyProgram methodName
    INFO: The number A: 10
    Oct 25, 2013 11:43:02 PM mypackage.TheNameOfMyProgram methodName
    INFO: The number A: 20

我希望输出以System.out的方式显示:

    The number A: 10
    The number B: 20

我该怎么做才能实现这一目标?我知道我可能需要创建一个单独的类,比如说LogFormatter,然后调用它来打印AB 那么,请你们解释一下如何创建LogFormatter以及如何调用它以获得所需的输出。

请帮忙!谢谢!

4

1 回答 1

0

假设您的java.util.logging配置正在使用SimpleFormatter,您可以更改配置文件中的格式字符串。有关详细信息,请参阅javadoc

Oracle 文档是“稀疏的”(IMO)。我能找到的关于编写java.util.logging配置文件的最好的在线“教程”文章是http://tutorials.jenkov.com/java-logging/configuration.html


大多数人使用 3rd 方日志库而不是java.util.logging. 最受欢迎的是 log4j 1.2 和 logback。如果您想将(可重用)代码与日志框架的选择隔离开来,请查看 slf4j 外观库。

于 2013-10-26T05:18:07.227 回答