2017-03-16 9 views
1

を働いていないハッシュテーブルに(にContainsKeyを)キーを見つけ、私はこれでハッシュテーブルをロードしています

$htA.ContainsKey($h.name) 

私が取得この超高速エラー:

[Selected.System.IO.FileInfo]に「ContainsKey」という名前のメソッドが含まれていないため、メソッドの呼び出しに失敗しました。

At line:3 char:9 
IF ($htA.ContainsKey($h.name) -eq $false) { 

    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
+ CategoryInfo   : InvalidOperation: (ContainsKey:String) [], RuntimeException 
+ FullyQualifiedErrorId : MethodNotFound** 

これは正当なハッシュテーブルではありませんか?

答えて

2

$ htAは、この型にキャストされた型(この場合はSystem.IO.FileInfo)として作成されます。試してみてください:

$htA = @{} # Initialises as an empty hash table 
foreach ($file in (dir | Where-Object {$_.Name -match "\.output\.[A-Z]-[0-9]\.csv"} | select name,length)) 
{ 
$htA.Add($file.name, $file.length) # Populate hash table 
} 
関連する問題