Чтение и запись содержимого XML с использованием Powershell - PullRequest
0 голосов
/ 17 июня 2019

Я сейчас читаю XML-контент из файла, используя Get-Content и powershell.Затем я создаю этот контент как объект XML и вносю некоторые изменения в даты.Сейчас я пытаюсь записать измененное содержимое XML в исходный файл с помощью Set-Content;Тем не менее, он пишет только следующее: «System.Xml.XmlDocument» Может кто-нибудь предложить лучший способ записи содержимого XML в файл?Ниже приведен код Powershell, который я использую:

    $xmlExample = Get-Content -Path C:\Users\ELO1MTP\Documents\RPAVERTEX\TaxDataExportRequestSample.xml

#convert example to xml object
[xml]$xml = $xmlExample

#Change Start / End to today
$xml.Envelope.Body.RunTaxDataExportRequest.StartDate = (Get-Date).ToString("yyyy-MM-dd")
$xml.Envelope.Body.RunTaxDataExportRequest.EndDate = (Get-Date).ToString("yyyy-MM-dd")

#Write Results to original file
set-Content -Path C:\Users\ELO1MTP\Documents\RPAVERTEX\TaxDataExportRequestSample.xml -Value $xml
$xml.Envelope.Body.RunTaxDataExportRequest

Ответы [ 2 ]

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

Делает это тоже довольно. Если в верхней части есть атрибут кодирования, он будет определять кодировку, которую он сохранит как.

$xml.save('C:\Users\ELO1MTP\Documents\RPAVERTEX\TaxDataExportRequestSample.xml')
0 голосов
/ 17 июня 2019

Если вы пытаетесь преобразовать XML обратно в строковый формат, это должно работать для вас.

$xml.OuterXml

Теперь вы можете записать его обратно на диск, как:

set-Content -Path C:\Users\ELO1MTP\Documents\RPAVERTEX\TaxDataExportRequestSample.xml -Value $xml.OuterXml
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...