У меня есть функция, которая создает и возвращает документ XML. Затем я хочу вставить весь этот документ в другой документ XML. Мне кажется, что проблема в том, что информация XML-заголовка автоматически добавляется в документ XML, а затем я получаю сообщение об ошибке при попытке вставить это. Мой код выглядит следующим образом:
xmlElem = xmlDoc.createElement("MyNode");
tmpXmlStr = this.MyXmlBuildFunc();
xmlElem.innerXml(tmpXmlStr);
// Now try to add this to the main document
xmlParentNode.appendChild(xmlElem);
Моя функция выглядит примерно так:
str MyXmlBuildFunc()
{
XmlDocument xmlOut;
XmlNode curNod;
XmlElement xmlElem;
XmlElement xmlParentElem;
;
xmlOut = XmlDocument::newBlank();
xmlParentElem = xmlOut.createElement("MainNode");
xmlElem = xmlOut.createElement("NodeName");
xmlElem.innerText("NodeValue");
xmlParentElem.appendChild(xmlElem);
xmlOut.appendChild(xmlParentElem);
return xmlOut.xml();
}
Я получаю следующую ошибку:
Unexpected XML declaration. The XML declaration must be the first node in the document, and no white space characters are allowed to appear before it
Отслеживая это, я полагаю, что это вызвано определением XML, создаваемым созданием XmlDocument в функции. Как я могу остановить это, игнорировать или обойти эту ошибку другим способом?