如何将testNG Reporter.log()编码更改为UTF-16

时间:2014-11-19 09:41:51

标签: java logging encoding utf-8 testng

我正在使用testNG和硒。我有两种记录器,一种是 log4j 记录器,另一种是 testNG Reporter.log()。现在的问题是我需要记录一些中文文本。但它正在成为' ????'而不是中文文本。所以我更改了log4j.properties文件,只添加了两行:

log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.encoding=UTF-16

现在在我的log4j日志中它正常运行但在testNG Reporter.log()中它仍然会出现在' ?????'。

Log4j日志:输入的文字'美联泰'

TestNG Reporter.log():输入的文字' ???'

如何将testNG Reporter.log()编码设置为UTF-16?

2 个答案:

答案 0 :(得分:0)

您可以在API中试用Reporter#log(new String(s, "UTF-16"), level);吗? 有关详细信息,请参阅String API

答案 1 :(得分:0)

我尝试了别的东西,现在它正在发挥作用。刚刚添加了JAVA_TOOL_OPTIONS环境变量。变量名称:JAVA_TOOL_OPTIONS变量值:-Dfile.encoding=UTF8