Rapidxml и начальные теги

0

У меня проблемы с quickxml. Когда я компилирую свой код, в него не включаются начальные тэги.. все и вся помощь будут высоко оценены

    int main(){


    xml_document<> doc;
    //xml declaration
    xml_node<>* decl = doc.allocate_node(node_declaration);
    decl->append_attribute(doc.allocate_attribute("version","1.0"));
    decl->append_attribute(doc.allocate_attribute("encoding", "utf-8"));
        doc.append_node(decl);
     // root node
        xml_node<>* root = doc.allocate_node(node_element, "root");
        root->append_attribute(doc.allocate_attribute(""));
                    doc.append_node(root);
                // child/sibling node
        xml_node<>* sibling0 = doc.allocate_node(node_element, "old");
        root->append_node(sibling0);
        xml_node<>* sibling = doc.allocate_node(node_element,"boy");
        root->append_node(sibling );
                 std::string xmlstring;
        print(back_inserter(xmlstring), doc);
        cout << xmlstring << endl;}
Теги:
rapidxml

1 ответ

0
Лучший ответ

Помимо необходимых #includes и отсутствующих using namespace rapidxml; ваш код компилируется и работает отлично для меня.

xmlstring содержит следующее:

<?xml version="1.0" encoding="utf-8"?>
<root ="">
    <old/>
    <boy/>
</root>

Поскольку у old и boy нет контента, они используют xml пустые теги элементов, <tagname/> а не пары start и end, такие как <tagname></tagname>

  • 0
    Большое спасибо!!!! Родди

Ещё вопросы

Сообщество Overcoder
Наверх
Меню