MSXML2.DOMDocument.xml дает мне искаженный xml

У нас есть старая устаревшая система, в которой компонент является пишущим в VB6. Один метод возвращает строку, которая является данными XML. Данные xml создаются с помощью msxml3.dll MSXML2.DOMDocument и возвращают данные документа со свойством xml: http://msdn.microsoft.com/en-us/library/ms755989(v=VS.85).aspx

Однако некоторые данные из xmldocument взяты из базы данных, а одно поле представляет собой строку хешированного пароля. Код, который устанавливает данные для элемента:

            Set cellNode = rowNode.appendChild(xml.createElement("COL"))
            If IsNull(rs(oField.name).Value) Then
                cellNode.Text = ""
            Else
                cellNode.Text = rs(oField.name).Value
            End If

Это дает мне искаженный / плохо сформированный xml:

<ROWS><ROW><COL>r<í</COL></ROW></ROWS>

Есть ли обходной путь для этого?

1 ответ

Вы должны избегать символов Юникода. Или поместите их в тег CDATA (что, впрочем, не очень хорошее решение) между прочим < > и & также следует экранировать.

Другие вопросы по тегам