2012-06-29 32 views
3

之間換行符這是我到目前爲止有:打開/保存XML同時保留節點的屬性

$XML = New-Object System.Xml.XmlDocument 
$XML.PreserveWhitespace = $true 
$XML.Load($path) 
#change some node attributes 
$XML.Save($path) 

如果我拿開一個XML文件,並採取這樣的片段:

<Node 
Name="tyjytj" 
Number="rthjr" 
Source="rjyrtjrjrtj" 
BinaryDrive="teheherhehtr" /> 

它會像這樣保存:

<Node Name="tyjytj" Number="rthjr" Source="rjyrtjrjrtj" BinaryDrive="teheherhehtr" /> 

但我想能夠改變(例如)節點的名稱,而keepi每個屬性之間的換行符。我希望格式保持原樣,然後打開/保存它。

+0

我知道沒有允許的XML解析器。這種格式不是xml結構的一部分,所以在讀取xml時,它會丟失,改變內存結構然後寫入它。這也不是PowerShell特有的。實際上,您正在使用.Net類。如果您將搜索範圍擴大到.Net –

+0

謝謝,我會這麼做。這是一個無賴。 – jsirr13

回答

-3

世界上沒有XML解析器會告訴你開始標籤中的屬性是由空格,換行符還是製表符分隔的。你不應該在意。

+3

可讀性,更改基線和修改使新線條保留時更容易。我認爲這值得關注,如果這是你經常修改的東西(就像我的情況一樣)。 – jsirr13