【发布时间】:2018-07-03 08:52:38
【问题描述】:
我想将 boost wptree 写入文件。
在我的 Windows 上使用当前的std::locale,设置为C,输出 xml 文件的某些部分如下所示:
<demo>
<demostring1>Abc</demostring1>
<demostring2>abc>def</demostring2>
</demo>
但我希望输出看起来像这样:
<demo>
<demostring1>Abc</demostring1>
<demostring2>abc>def</demostring2>
</demo>
这是将wptree 写入文件的代码:
boost::property_tree::xml_parser::write_xml(wstringToString(filename), mainTree,
std::locale(),
boost::property_tree::xml_writer_make_settings<std::wstring>(' ', 4));
我尝试通过以下方式更改语言环境
boost::property_tree::xml_parser::write_xml(wstringToString(filename), mainTree,
std::locale("en_US.UTF-8"), // Give an Exception on runtime.
boost::property_tree::xml_writer_make_settings<std::wstring>(' ', 4));
如何更改语言环境以便在 XML 文件中正确打印符号?
【问题讨论】:
-
这与语言环境无关。
-
“我怎样才能使磁通电容器变得脆弱,以使符号像描述的那样被破坏”?语言环境与事物无关。