我有一个PowerShell字典,其中包含数组,通过
填充foreach ($res in $result){
foreach ($proper in $props){
if ($proper.EntityId -eq $res.id){
$ht[$res.name] += @($res.name,$proper.Val,$proper.PropDefId)
}
}
}
@{key,@(value1,value2,value3)}
我正在寻找一种方法将其导出到
dictionary,value1,value2,value3
格式。
如果我只有一个值,我会做$ht.GetEnumerator() | Export-Csv csvname.csv
。
我尝试过$ht.GetEnumerator | $_.GetEnumerator |
,但这不起作用。
答案 0 :(得分:0)
枚举外部哈希表的元素,从内部哈希表创建对象(如建议的@wOxxOm),并将外部哈希表的键添加为calculated property。然后将结果导出为CSV
$ht.GetEnumerator() | ForEach-Object {
$key = $_.Name
New-Object -Type PSObject -Property $_.Value |
Select-Object @{n='Dictionary';e={$key}},*
} | Export-Csv 'C:\path\to\output.csv' -NoType
编辑:您有一个数组字典,而不是字典字典。它可以导出为这样的CSV:
$ht.Keys | ForEach-Object {
New-Object -Type PSObject -Property @{
'key' = $_
'value1' = $ht[$_][0]
'value2' = $ht[$_][1]
'value3' = $ht[$_][2]
}
} | Export-Csv 'C:\path\to\output.csv' -NoType