34

PowerShell で csv ファイルを処理したいのですが、処理時に CSV ファイルの列見出しがどうなるかわかりません。

例えば:

$path = "d:\scratch\export.csv"
$csv = Import-csv -path $path

foreach($line in $csv)
{ 
    foreach ($head in $line | get-member | where-object {$_.MemberType -eq "NoteProperty"} | select Definition)
    {
        #pseudocode...
        doSomething($head.columnName, $head.value)
    }

}

csv ファイルの行をループして、列の名前と値を取得するにはどうすればよいですか? または、これを行うべき別の方法がありますか (Import-csv を使用しないなど)?

4

3 に答える 3

51
Import-Csv $path | Foreach-Object { 

    foreach ($property in $_.PSObject.Properties)
    {
        doSomething $property.Name, $property.Value
    } 

}
于 2012-08-09T14:13:56.837 に答える