当Directory.GetFiles()被拒绝访问时忽略文件夹/文件

当Directory.GetFiles()被拒绝访问时忽略文件夹/文件

我正在尝试显示在所选目录(以及任意子目录)中找到的所有文件的列表。我遇到的问题是,当GetFiles()方法遇到它无法访问的文件夹时,它会抛出一个异常,然后进程停止。

如何忽略此异常(并忽略受保护的文件夹/文件)并继续向列表中添加可访问的文件?

try{
    if (cbSubFolders.Checked == false)
    {
        string[] files = Directory.GetFiles(folderBrowserDialog1.SelectedPath);
        foreach (string fileName in files)
            ProcessFile(fileName);
    }
    else
    {
        string[] files = Directory.GetFiles(folderBrowserDialog1.SelectedPath, "*.*", SearchOption.AllDirectories);
        foreach (string fileName in files)
            ProcessFile(fileName);
    }
    lblNumberOfFilesDisplay.Enabled = true;}catch (UnauthorizedAccessException) { }finally {}


慕斯王
浏览 2009回答 3
3回答
打开App,查看更多内容
随时随地看视频慕课网APP