,sample.log被解析为 utf8。现在想在windows.936上写,但是下面的代码没用。
void init_logging() {
...
std::string strCodePage = boost::locale::util::get_system_locale();//strCodePage is "zh_CN.windows-936"
std::locale loc = boost::locale::generator().generate(strCodePage);
sink->imbue(loc);
...
}
void test_wide_char_logging() {
...
const wchar_t national_chars[] = L"汉字";
BOOST_LOG(lg) << national_chars;
...
}
例如"汉字"
sample.log中的 是0xe6b189 0xe5ad97
,解析为utf8。但我希望"汉字"
sample.log中的 应该是0xbaba 0xd7d6
,解析为windows-936(同GBK,GB2312)。你可以帮帮我吗?