如何在log4net布局模式中插入选项卡?

mar*_*ark 28 log4net

我的需求很简单 - 我希望能够在excel中打开我的文本日志文件,以便它在与日志字段匹配的列中自动中断它.

为此,我需要用选项卡分隔日志字段.

我的模式是: %utcdate [%thread] %-5level %logger - %message%newline

我需要这样的东西: %utcdate%tab[%thread]%tab%-5level%tab%logger%tab%message%newline

谢谢.

T.J*_*der 48

警告:我实际上没有使用过log4net.但如果我理解正确,配置是一个XML文件,不是吗?而且模式只是带有一些特殊标记的文本.那么您是否尝试在模式中嵌入实际制表符?选项卡的XML序列是	,例如:

<conversionPattern value="%utcdate&#9;[%thread]&#9;%-5level&#9;%logger&#9;%message%newline" />
Run Code Online (Sandbox Code Playgroud)

或者,如果您以其他方式提供模式(可能通过PatternString构造函数或其他方式),只需在您传入的字符串中包含制表符.该构造函数的PatternLayout文档将遵循文档来讨论字符串本身,以及他们说:

您可以在转换模式中插入任何文字文本.

(他们的重点.)值得一试,无论如何......

  • 谢谢.\ t不起作用,但&#9; 确实有效. (4认同)

Gor*_*ysz 7

这对我有用:

1)实例化您的日志记录类时,添加以下行:

log4net.GlobalContext.Properties["tab"] = "\t";
Run Code Online (Sandbox Code Playgroud)

2)然后在log4net XML中,引用新创建的log4net属性.例如:

<conversionPattern value="%property{tab}%message%newline" />
Run Code Online (Sandbox Code Playgroud)