C#删除只读文件或文件夹(解决File.Delete无法删除文件)

2019-12-26 13:20:01于丽

易采站长站为您分析C#删除只读文件或文件夹(解决File.Delete无法删除文件),需要的朋友可以参考下

C#删除只读文件的方法:

 

 
  1. if (File.GetAttributes(FFName).ToString().IndexOf("ReadOnly") != -1)  File.SetAttributes(FFName, FileAttributes.Normal); 
  2. File.Delete(FFName);//不能删除只读文件 

C#删除只读文件夹的方法:

只读文件夹删除需要先删除文件夹内的文件,然后在使用删除文件夹才能成功,否则将会报没有权限访问。

下面是遍历删除文件夹代码

 

 
  1. /// <summary>  /// 用来遍历删除目录下的文件以及该文件夹 
  2. /// </summary>  public void DeleteFileByDirectory(DirectoryInfo info) 
  3. {  foreach (DirectoryInfo newInfo in info.GetDirectories()) 
  4. {  DeleteFileByDirectory(newInfo); 
  5. }  foreach (FileInfo newInfo in info.GetFiles()) 
  6. {  newInfo.Attributes = newInfo.Attributes &~(FileAttributes.Archive | FileAttributes.ReadOnly | FileAttributes.Hidden); 
  7. newInfo.Delete();  } 
  8. info.Attributes = info.Attributes & ~(FileAttributes.Archive | FileAttributes.ReadOnly | FileAttributes.Hidden);  info.Delete(); 
  9.   }