私はそのコンストラクタを動作させることができません。しかし、これは動作するようです:
# $temp = Get-ResourceFiles
$resourceFiles = New-Object System.Collections.ArrayList($null)
$resourceFiles.AddRange($temp)
ます。また、初期容量を設定するには、コンストラクタに整数を渡すことができます。
ファイルを列挙するとはどういう意味ですか?必要な値を新しい配列にフィルタリングできないのはなぜですか?
編集:
あなたがこのような配列コンストラクターを使用することができるようです:
$resourceFiles = New-Object System.Collections.ArrayList(,$someArray)
カンマに注意してください。私は、.NETメソッドを呼び出すと、常にパラメータを配列として渡すということが起こっていると考えています。 PowerShellはその配列を展開し、別のパラメータとしてメソッドに渡します。この場合、PowerShellで配列を展開する必要はありません。配列を単一の単位として渡したいと考えています。さて、コンマ演算子は配列を作成します。そのため、PowerShellは配列を展開した後、コンマ演算子を使用して配列を作成します。私はそれが何が起こっていると思います。
どのようにアイテムをフィルタリングしますか? –
@マーク、削除するファイルをどのように決定するかについて、さらに詳しい情報を教えてください。また、Get-ResourceFilesは何を返しますか? –
私はそこに相対パスを持つテキストファイルを持っています。ディレクトリを列挙した後、ファイルにファイルが存在するかどうかをチェックし、ファイルが存在しない場合はリストから削除します。 Get-ResourceFilesはパスを文字列として返すだけです –