Access to the path 'c:\$Recycle.Bin\S-1-5-18' is denied

前端 未结 4 834
天涯浪人
天涯浪人 2020-12-31 22:05

I have this code to copy all files from source-directory, F:\\, to destination-directory.

public void Copy(string sourceDir, string targetDir)
{         


        
4条回答
  •  再見小時候
    2020-12-31 22:43

    Use following function instead of System.IO.Directory.GetFiles:

    IEnumerable GetAllFiles(string path, string searchPattern)
        {
            return System.IO.Directory.EnumerateFiles(path, searchPattern).Union(
                System.IO.Directory.EnumerateDirectories(path).SelectMany(d =>
                {
                    try
                    {
                        return GetAllFiles(d,searchPattern);
                    }
                    catch (UnauthorizedAccessException e)
                    {
                        return Enumerable.Empty();
                    }
                }));
        }
    

提交回复
热议问题