TinyXML2/C++ - 创建空元素

TinyXML2/C++ - create empty element

本文关键字:元素 创建 C++ TinyXML2      更新时间:2023-10-16

我正在尝试使用TinyXML2创建XML文件。

string _text = "<body><foo><foo2>text</foo2></foo></body>";
XMLElement *body = xmlDoc->NewElement("body");
body->SetText(_text.c_str());

给我:

<body>
    &lt;body&gt;&lt;foo&gt;&lt;foo2&gt;text&lt;foo2/&gt;&lt;foo/&gt;&lt;body/&gt;
<body>

有什么方法可以创建没有顶部"body"的空元素并用 <,> 替换转义字符?

您已经创建了一个顶级元素<body>然后在其下方添加了另一个带有子元素的<body>元素。您无法创建"空"元素,但可以直接将字符串添加到空文档中:

XMLDocument doc;
doc .Parse ("<body><foo><foo2>text</foo2></foo></body>");