トップ回答者
SharePoint 上のアイテムを、PowerShellを使用し「.XML」で取得するが、中身が1行。タブを入れ見やすくしたい。

質問
-
# .NET CSOM モジュールの読み込み [Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.SPFieldType") [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Client" ) | Out-Null [System.Reflection.Assembly]::LoadWithPartialName("Microsoft.SharePoint.Client.Runtime") | Out-Null # -- 【変数宣言】SharePoint -- $siteUrl = "対象URL" $userName = "アカウント名" $password = "パスワード" | ConvertTo-SecureString -Force -AsPlainText $listTitle = "対象リスト名" <# XMLファイル保存場所指定 #> $savePath = "保存先パス\SAVE.xml" # ログイン情報取得 $clientContext = New-Object Microsoft.SharePoint.Client.ClientContext($siteUrl) $clientContext.Credentials = New-Object Microsoft.SharePoint.Client.SharePointOnlineCredentials($userName, $password) # リスト読み込み $list = $clientContext.Web.Lists.GetByTitle($listTitle) $clientContext.Load($list) $clientContext.ExecuteQuery() # ビュー読み込み $query = New-Object Microsoft.SharePoint.Client.CamlQuery $items = $list.GetItems($query) $clientContext.Load($items) $clientContext.ExecuteQuery() # XML読み込み $xmlDocument = New-Object System.Xml.XmlDocument $listElement = $xmlDocument.AppendChild($XmlDocument.CreateElement("List")) # XML情報取得 foreach ($item in $items) { $itemElement = $listElement.AppendChild($XmlDocument.CreateElement("Item")) foreach ($value in $item.FieldValues.GetEnumerator()) { $valueElement = $itemElement.AppendChild($XmlDocument.CreateElement($value.Key)) $valueElement.InnerText = $value.Value } } # XMLファイル出力 $xmlDocument.OuterXml | Out-File $savePath
上記ソースコードで、SharePoint Online 上の対象アイテムを、「XMLファイル」でローカルに保存が出来るのですが
保存されたXMLファイルを確認すると、1行になっていて見づらいです。
そこで、「保存する際にタブ等を入れ、体裁を整えてファイルを保存」
or
「保存したXMLファイルを読み込み、タブを追加して"上書き" or "別名保存"」がしたいのですが
やり方(ソースの書き方)や、関数が分からず困っております。
どなたか分かる方がいれば、ご教示頂ければと思います。
よろしくお願い致します。