好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

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

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

?

if (File.GetAttributes(FFName).ToString().IndexOf( "ReadOnly" ) != -1)

File.SetAttributes(FFName, FileAttributes.Normal);

File.Delete(FFName); //不能删除只读文件

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

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

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

?

/// <summary>

     ///  用来遍历删除目录下的文件以及该文件夹

     /// </summary>

     public void DeleteFileByDirectory(DirectoryInfo info)

     {

       foreach (DirectoryInfo newInfo in info.GetDirectories())

       {

         DeleteFileByDirectory(newInfo);

       }

       foreach (FileInfo newInfo in info.GetFiles())

       {

         newInfo.Attributes = newInfo.Attributes &~(FileAttributes.Archive | FileAttributes.ReadOnly | FileAttributes.Hidden);

         newInfo.Delete();

       }

       info.Attributes = info.Attributes & ~(FileAttributes.Archive | FileAttributes.ReadOnly | FileAttributes.Hidden);

       info.Delete();

 

     }

另外说明:

在操作文件夹时候,在没有删除文件夹里面文件时候貌似对文件夹设置FileAttributes是没有效果,只有文件全部删除后才能设置文件夹属性。

dy("nrwz");

查看更多关于C#删除只读文件或文件夹(解决File.Delete无法删除文件)的详细内容...

  阅读:92次