У меня есть устаревшее приложение VB 6, которое поддерживает msxml4.dll.
. Он использует метод .loadXML MSXML2.DOMDocument для создания из строк XML, а затем использует свойство .xml для вывода строкxml:
Dim doc As MSXML2.DOMDocument
Set doc = CreateObject("MSXML2.DOMDocument.4.0")
Call doc.loadXML("<doc/>")
' ... manipulation of doc ...
Dim xml As String
xml = doc.xml
Я обнаружил проблему со свойством .xml.При использовании приведенного выше кода строка xml имеет NewLine в конце:
Как я могу предотвратить это?
Если это невозможноостановлен (т. е. если это ошибка в MSXML или по замыслу), то как я могу удалить ее в VB 6?Trim(xml)
не работает
РЕДАКТИРОВАТЬ Я обновил вопрос, так как это свойство .xml, а не метод .loadXML, который, по-видимому, виноват.Если я выберу документ в качестве элемента:
Dim elm As MSXML2.IXMLDOMElement
Set elm = doc.selectSingleNode("doc")
xml = elm.xml
, свойство .xml будет работать так, как ожидается, без добавления символа NewLine, поэтому, похоже, оно относится к свойству DOMDocument.xml.
РЕДАКТИРОВАТЬ 2: Следуя ответу SpectralGhost, вот что я в итоге использовал:
If Right(xml, Len(vbNewLine)) = vbNewLine Then
xml = Left(xml, Len(xml) - Len(vbNewLine))
End If
Я использую vbNewLine, чтобы избежать проблем, специфичных для платформы.