1
        string[] files = Directory.GetFiles(tb_dir.Text, tb_filter.Text, SearchOption.AllDirectories);

ディレクトリとすべてのサブディレクトリを検索して、ファイルを見つけようとしています。私は現在のコードでエラーが発生し続け、2番目にそれが入ることができない何かを見ると壊れます

このアプリケーションでは、問題ではありませんが、先に進みます。とにかく、このコードが毎回ダンプされるのを回避する方法はありますか?

ありがとう

Crash893

4

1 に答える 1

1

あなたはこのようなことをすることができます:

List<string> GetFiles(string topDirectory, string filter)
{
    List<string> list = new List<string>();
    list.AddRange(Directory.GetFiles(topDirectory, filter));
    foreach (string directory in Directory.GetDirectories(topDirectory))
    {
        list.AddRange(GetFiles(directory));
    }
    return list;
}

そしてそれを次のように呼びます:

List<string> files = GetFiles(tb_dir.Text, tb_filter.Text);

もちろん、ファイルのリストを配列に変換することもできます。

UnauthorizedAccessExceptionを処理するには、trycatchブロックを追加する必要があります。

于 2010-11-08T20:06:07.760 に答える