Создание IXMLDOMnode из строки

У меня есть строка, которая содержит XML-представление узла XML, который я намереваюсь вставить в документ XML, загруженный в память. XML-строка (узла) выглядит примерно так:

<ns1:Feature name=\"PageSize\">\
<ns1:Option name=\"A4\" />\
</ns1:Feature>

Таким образом, у него есть пространство имен для имен тегов.

Есть ли способ, которым я могу достичь этого?

  1. Я пытался пользователя XMLDomNode->put_text(), но он не работает, так как заменяет<символы «и»> по их текстовым представлениям (&lt; так далее.)

  2. Мне было интересно, подойдет ли загрузка строкового буфера в отдельный XML-документ в памяти и затем получение указателя узла оттуда на моем исходном документе. Но опять же, не уверен, могут ли XMLDOM-узлы передаваться внутри документов.

0

Решение

Я решил это сам, используя 2-й подход:

1) Создайте XML-документ в памяти на основе IXMLDOMDocument3 интерфейс и загрузить строку XML там.

2) Выберите нужный вам узел, используя selectNode () метод.

3) Теперь вернитесь к исходному XML-документу, где вы хотите разместить узел, и снова загрузите его как IXMLDOMDocument3 интерфейс.

4) Используйте importNode () метод IXMLDOMDocument3 с шага 3 клонировать узел, полученный на шаге 2.

5) Теперь вы можете использовать клонированный узел, чтобы сделать AppendChild () к оригинальному XML.

0

Другие решения


По вопросам рекламы [email protected]