Ho testato boost::property_tree
ed era buono: posso caricare un XML, estrarre gli elementi, salvare l'XML, ecc. Ma è possibile generare un XML e stamparlo? Non voglio salvarlo.Stampa il xml generato dall'albero delle proprietà boost
void debug_settings::load(const std::string &filename) {
using boost::property_tree::ptree;
ptree pt;
read_xml(filename, pt);
m_file = pt.get<std::string>("debug.filename");
m_level = pt.get("debug.level", 0);
BOOST_FOREACH(ptree::value_type &v, pt.get_child("debug.modules"))m_modules.insert(v.second.data());
}
void debug_settings::save(const std::string &filename) {
using boost::property_tree::ptree;
ptree pt;
pt.put("debug.filename", m_file);
pt.put("debug.level", m_level);
BOOST_FOREACH(const std::string &name, m_modules)pt.add("debug.modules.module", name);
write_xml(filename, pt);
}
Questa è la funzione che utilizzo per caricare e salvare l'XML. Abbiamo qualche metodo per visualizzarlo?
scrittura nel flusso (std :: stringstream) per esempio. – ForEveR
@ForEveR Puoi darmi un piccolo esempio? – Kathick