使用log4j2在log.txt文件中忽略“\ n”换行符

时间:2015-07-14 18:49:20

标签: java logging log4j2

当我写入我的日志文件时,我当前遇到log4j2忽略“\ n”的问题。例如,使用log4j2使用以下代码登录控制台

log.info("Hello \nWorld");

将输出到控制台:

Hello
World

在我的日志文件log.txt中,相同的代码产生:

Hello World

最终忽略了“\ n”。

我的log4j2.xml文件:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="INFO">
<Appenders>
    <Console name="Console" target="SYSTEM_OUT">
        <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - 
%msg%n" />
    </Console>
    <File name="MonthlyCBK" fileName="${sys:MonthlyCBK}" append="true">
        <PatternLayout pattern="%d{MM-dd-yy HH:mm:ss} %-5level %logger{36} - 
%msg%n"/>
    </File>
</Appenders>
<Loggers>
    <Root level="debug">
        <AppenderRef ref="Console" level="info" />
        <AppenderRef ref="MonthlyCBK" level="debug"/>
    </Root>
</Loggers>
</Configuration>

我错过了log4j2中可能允许在我的文件中换行的选项吗?或者log4j2在写入日志文件时是否不允许新行?

1 个答案:

答案 0 :(得分:2)

您可以使用printf方法:

logger.printf(Level.INFO,“Hello%n world”);