用log4net写希伯来语

时间:2013-07-08 11:05:35

标签: log4net hebrew

我使用log4net将混合的希伯来语和英语字符写入文件,但我没有使用希伯来语,而是看到问号。

我尝试将应用程序和Thread的文化信息设置为'he-IL',但似乎没有帮助。

log4net是否支持希伯来字符?如果是这样,我怎么能让它工作? 感谢

编辑: 这是我的配置部分:

<appender name="ErrorsFileAppender" type="log4net.Appender.RollingFileAppender,log4net">
  <param name="File" value="c:\\taskman\\service.log"/>
  <param name="AppendToFile" value="true" />
  <rollingStyle value="Date"/>
  <datePattern value="'service.'yyyy-MM-dd'.log'"/>
  <layout type="log4net.Layout.PatternLayout,log4net">
    <param name="ConversionPattern" value="%d;%m%n"/>
  </layout>
</appender>  

希伯来文本来自DB,它是一个SQL Server 2005。

3 个答案:

答案 0 :(得分:1)

将以下行添加到app.config部分的appender文件中:

<encoding value="windows-1255" />

答案 1 :(得分:1)

在这里遇到同样的问题。 我已使用以下设置配置了log4net:

<log4net>
    <root>
      <level value="DEBUG" />
      <appender-ref ref="LogFileAppender" />
    </root>
    <appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender" >
      <param name="File" value="giscraweler.txt" />
      <encoding value="windows-1255" />
      <param name="AppendToFile" value="true" />
      <rollingStyle value="Size" />
      <maxSizeRollBackups value="10" />
      <maximumFileSize value="10MB" />
      <staticLogFileName value="true" />
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%date [%thread] %-5level - %message%newline" />
      </layout>
    </appender>
</log4net>

我在Visual Studio调试窗口中看到了这个字体,但是当我用Notepad ++打开日志文件时 - 文本不对,我看到了奇怪的字符。

如何解决?设置“字符集”作为建议的第一条评论 我选择了字符集windows-1255,现在我看到了希伯来字体。

答案 2 :(得分:1)

我尝试将windows-1255添加到编码值后,我仍然遇到希伯来文问题。

我最后补充说: <encoding value="utf-8" />

它仅适用于 UTF-8 模式