在TinyXml
你可以创建一个Element
例如TiXmlElement("tag")
,但TinyXml2
没有公共构造函数XMLElement
?
你如何创造元素?
与现有答案类似,我为我的应用程序编写了这个帮助实用程序:
tinyxml2::XMLElement* CChristianLifeMinistryEntry::InsertNewElement(tinyxml2::XMLDocument& rDoc, tinyxml2::XMLElement*& pParent, LPCSTR strElement, CString strValue)
{
XMLElement *pElement = rDoc.NewElement(strElement);
USES_CONVERSION;
if (pElement == nullptr)
AfxThrowMemoryException();
pElement->SetText(CT2CA(strValue, CP_UTF8));
pParent->InsertEndChild(pElement);
return pElement;
}
它会自动将一个新的子元素添加到列表的末尾。此外,它设置元素的文本值。
您在文档的上下文中创建一个元素,因此调用
tinyxml2::XMLElement * tinyxml2::XMLDocument::NewElement (const char * name)
.
例如创建一个新元素并将其添加为现有元素的子元素e
XMLElement * new = e -> GetDocument() -> NewElement ("tag");
e -> InsertFirstChild (new);
或者,要一步完成,您可以append_element
在我的 tinyxml2 扩展中查找