从File.Copy中排除系统硬链接

从File.Copy中排除系统硬链接

问题描述:

所以我的问题是我想导出我的用户帐户。 但C:\%user%\AppData\Local\里面有System Hardlinks例如:Application Data,我显然没有权利使用它们。从File.Copy中排除系统硬链接

有没有办法从复制过程中排除那些System Hardlinks

所以我固定的问题与Exception handling,做这个way

FileInfo[] sourceFiles = null; 

      try { 

       sourceFiles = new DirectoryInfo(sourcePath).GetFiles(); 
      } catch (Exception ex) { 

       WriteLog(LogPath, ex + "");         
       return; 
      } 

因为我对于exception handling有点新了,在这个问题的头几个小时我无法解决这个问题。

我不知道你的意思是用硬链接是什么,但是这可能会帮助您

foreach (var dir in new DirectoryInfo(@"c:\users\xxxxxx\AppData\Local").GetDirectories()) 
{ 
    if (dir.Attributes.HasFlag(FileAttributes.ReparsePoint)) 
    { 
     Console.WriteLine(dir.Name + " is symbolic, skip it"); 
    } 
    else 
    { 
     //do your copy here 
    } 
}