2016-05-18 9 views
0

インポートされたCSV($csv)に複数のヘッダーがあり、そのうちの1つが「対象サーバー」です。だから私はしたいなどの値(fqdn1)CSVの特定の列の値をハッシュテーブルから置き換えます

- CSVではこの列は、デバイス2などの値のデバイス1、

を持っている私はまた、名前の名前/値のペアを持つハッシュテーブル($hash)(デバイス1)を持っています私は暖かく

foreach($row in $csv) 
    if($hash[$_.Name]){ 
    $row."Target Server"= $hash[$_.Value] 
    } 

アム:のように、ハッシュテーブルから正しい値をCSVで「デバイス1」を置き換えますか?

答えて

2

ハッシュテーブルは、キーの特定の名前を持つエントリ/含まれているかどうかを確認するためにContainsKey()メソッドを使用します。「1」引数(複数可)と「にContainsKey」を呼び出して例外:

foreach($row in $csv) { 
    if($hash.ContainsKey($row.'Target Server')) { 
     $row.'Target Server' = $hash[$row.'Target Server'] 
    } 
} 
+0

おかげマティアスが、私はエラーを取得します: 「キーはnullにはできません。パラメータ名:キー」 特定のcsv列を名前でどのように参照しますか? – Archie

+0

実際には動作していましたが、前回の操作で実行時にメモリから$ csvを渡していました。以前の結果を.csvにエクスポートし、それを$ csvに割り当ててインポートしました。 – Archie

関連する問題