【发布时间】:2013-12-16 18:26:23
【问题描述】:
考虑以下使用 boost::property_tree 的代码:
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/xml_parser.hpp>
using namespace boost::property_tree;
int main() {
ptree model_tree;
model_tree.add("calibrated", "true");
model_tree.add("model.<xmlattr>.label", "label");
model_tree.add("model.activity.<xmlattr>.type", "fixed");
write_xml("test.xml", model_tree);
}
通过编译和执行程序,我得到以下输出:
<?xml version="1.0" encoding="utf-8"?>
<calibrated>true</calibrated><model label="label"><activity type="fixed"/></model>
这不是我所期望的,因为没有新行也没有缩进。我想得到以下内容:
<?xml version="1.0" encoding="utf-8"?>
<calibrated>true</calibrated>
<model label="label">
<activity type="fixed"/>
</model>
这是一个错误,还是有获得后者输出的选项?任何帮助将不胜感激。
P.S.:我正在使用带有 gcc 4.6.3 和 boost 1.48 的 Ubuntu 12.04 LTS。
【问题讨论】:
-
你应该把你的答案变成一个正确的答案,这样我们就可以 (a) 支持它 (b) 它可以找到 meta.stackexchange.com/questions/12513/…
标签: c++ xml boost boost-propertytree