0

バージョン1.1がサポートされていないことを知ったので、例外がスローされないように、PowerShellでxmlファイルのコンテンツを読み取り、xmlにキャストする前にバージョン番号(1.1から1.0)を変更しています。
次に、コンテンツにいくつかの変更を加え、それをファイルに保存したいのですが、それを読んだときと同じように、バージョンを 1.0 から 1.1 に再度変更します。

私が使用するコマンドは次のとおりです。

@'
<?xml version='1.1' encoding='UTF-8'?>  

<Root>  
  <element1>  
    <string>name</string>  
  </element1>  
  <version>3.2.1</version>  
</Root> 
'@ | Out-File Demo.xml

$content = (Get-Content .\Demo.xml)
$replacedVersion = $content.Replace('<?xml version=''1.1'' encoding=''UTF-8''?>','<?xml version=''1.0'' encoding=''UTF-8''?>') 

$XMLFile = [xml]$replacedVersion   
// here I make my changes
//   ...
$pathToSaveAt = "C:\MyDir\newFile.xml"
$XMLFile.Save($pathToSaveAt)  

しかし、私が得る結果は、バージョンを含むヘッダーを持つxmlファイルです

<?xml version="1.0" encoding="UTF-8" ?>

バージョン1.1にしたいです。

私が取得しようとしている結果は、次の内容を含む xml ファイルです。

<?xml version='1.1' encoding='UTF-8'?>  

<Root>  
  // all the changes I made 
</Root> 

どうすればそれを達成できますか?

4

1 に答える 1