xml-fileからすべてのウィンドウおよびすべてのビューポイントノードのname-attributesの値を抽出したいと思います。xml-nodesからpowershellを使用してネストされたループ
[XML]$doc = get-content -path 'W:\Demo1.xml'
$objs = @()
$dashboards = $doc.SelectNodes("//window[@class = 'dashboard']")
foreach ($dashboard in $dashboards)
{
$worksheets = $dashboard.SelectNodes("//viewpoint[@name]")
foreach ($worksheet in $worksheets)
{
$obj = new-object psobject -prop @{Dashboard=$dashboard.name; Worksheet = $worksheet.name};
$objs += $obj;
}
}
$objs
私が期待したもの:
dashboard worksheet D1 V1 D1 V2 D1 V3 D2 V10 D2 V11
私が得たもの:
<?xml version='1.0' encoding='utf-8' ?>
<workbook>
<windows>
<window class='dashboard' name='D1'>
<viewpoints>
<viewpoint name='V1'> </viewpoint>
<viewpoint name='V2'> </viewpoint>
<viewpoint name='V3'> </viewpoint>
</viewpoints>
</window>
<window class='dashboard' name='D2'>
<viewpoints>
<viewpoint name='V10'> </viewpoint>
<viewpoint name='V11'> </viewpoint>
</viewpoints>
</window>
</windows>
</workbook>
この
は私が書いたコードですdashboard worksheet D1 V1 D1 V2 D1 V3 D1 V10 D1 V11 D1 V14 D2 V1 D2 V2 D2 V3 D2 V10 D2 V11 D2 V14
ここで何が間違っていますか?結果はネストされたループがどのように機能するかについての私の理解とは完全に相反しています。
あなたは私の日を保存しました。ありがとうございました。私はエラーを見つけるために何時間も費やしています。ちょっとしたことがありません...... – Nylix