Ho bisogno di modificare un file .xml con powershell. La cosa che devo fare è scaricare il file .xml dal server, aggiornare il numero di versione e salvarlo sul mio computer locale. Questo è quello che ho fatto.Modifica file .XML con PowerShell, codifica
[xml]$myXML = get-content $xmlFileServer
$myXML.'ivy-module'.info.revision = $newVersion
$myXML.Save($newXMLFileName)
Quindi avrò un nuovo file xml nel mio computer locale. Tuttavia, dubito che la codifica sia diversa poiché non posso elaborare con questo file .xml. Il .xml dovrei ottenere è qualcosa di simile:
<?xml version="1.0" encoding="UTF-8"?>
<ivy-module version="2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd" xmlns:e="http://ant.apache.org/ivy/extra">
<info organisation="XXXX" module="XXXX" revision="2.0.1.0" status="release" publication="20131119202217" />
<publications>
<artifact name="XXXX" type="dll" ext="zip" conf="*" />
</publications>
</ivy-module>
Tuttavia, dopo la modifica con PowerShell, l'XML contiene alcune informazioni nascoste. Ho provato ad aprire con NotePad ++, ho qualcosa di simile:
<?xml version="1.0" encoding="UTF-8"?>
<ivy-module version="2.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://ant.apache.org/ivy/schemas/ivy.xsd" xmlns:e="http://ant.apache.org/ivy/extra">
<info organisation="XXXX" module="XXXX" revision="2.0.1.0" status="release" publication="20131119202217"/>
<publications>
<artifact name="XXXX" type="dll" ext="zip" conf="*"/>
</publications>
</ivy-module>
Qualcuno può dirmi perché è la situazione? Grazie mille.
Grazie. Questo funziona. Devo solo aggiungere una riga di codici. Grazie. – Payson
Potrebbe estendere la risposta per mostrare come incorporare la soluzione collegata con un file XML? '[System.IO.File] :: WriteAllLines ($ MyPath, $ myXML, $ Utf8NoBomEncoding)' stampa semplicemente "System.Xml.XmlDocument". Preferirei non doverlo scrivere una volta con $ myXML.Save(), quindi rileggerlo di nuovo per salvare senza il BOM. – DannyMeister