Как открыть и сохранить файл XML UTF8 unix в VBA Excel? - PullRequest
1 голос
/ 14 марта 2019

Я пытаюсь внести некоторые изменения в файл XML, который был создан в Unix-системе в Excel VBA.

Я использую этот код:

Sub TestXML2()
    Dim XDoc As Object    
    Set XDoc = CreateObject("MSXML2.DOMDocument")
    XDoc.Load ("C:\test\input.xml")
    XDoc.Save ("C:\test\output.xml")
    Set XDoc = Nothing
End Sub

Когда я запускаю этоткод, код останавливается с ошибкой: x80004005 Невозможно сохранить символ в кодировке ASCII (переведено с другого языка).Часть выходного файла была сохранена, но когда я сравниваю входные и выходные файлы, есть 2 различия:

  1. Новый файл имеет конец строк "crlf", входные данные имеют только "lf".
  2. В новом файле символы не ASCII преобразованы в символы ASCII, то есть: 'ü';преобразуется в u (должно быть ü).

1 Ответ

0 голосов
/ 26 июня 2019

Вот мое решение. Конец строк все еще преобразуется из LF в CRLF, но я могу жить с этим.

Sub TestXML2()
    Dim XDoc As Object    
    Set XDoc = CreateObject("MSXML2.DOMDocument.6.0")
    XDoc.preserveWhiteSpace = True
    XDoc.Load ("C:\test\input.xml")
    XDoc.Save ("C:\test\output.xml")
    Set XDoc = Nothing
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...