Я использую boost :: property_tree для чтения и записи файлов конфигурации XML в моем приложении.
Но когда я пишу файл, вывод выглядит довольно уродливо с большим количеством пустых строк в файле.
Проблема в том, что он должен быть отредактирован людьми, поэтому я хотел бы получить лучший результат.
В качестве примера я написал небольшую тестовую программу:
#include <boost/property_tree/ptree.hpp>
#include <boost/property_tree/xml_parser.hpp>
int main( void )
{
using boost::property_tree::ptree;
ptree pt;
// reading file.xml
read_xml("file.xml", pt);
// writing the unchanged ptree in file2.xml
boost::property_tree::xml_writer_settings<char> settings('\t', 1);
write_xml("file2.xml", pt, std::locale(), settings);
return 0;
}
file.xml содержит:
<?xml version="1.0" ?>
<config>
<net>
<listenPort>10420</listenPort>
</net>
</config>
после запуска программы file2.xml содержит:
<?xml version="1.0" encoding="utf-8"?>
<config>
<net>
<listenPort>10420</listenPort>
</net>
</config>
Есть ли способ получить более качественный вывод, кроме ручного просмотра и удаления пустых строк?