C#删除只读文件或文件夹(解决File.Delete无法删除文件)
引用: http://www.jb51.net/article/72181.htm
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是没有效果,只有文件全部删除后才能设置文件夹属性。
最新文章
- Linux(Centos)系统上搭建SVN以及常见错误解答
- DEV提示控件ToolTipControl
- 调用gluNurbsCurve绘制圆弧
- 自动adsl拨号上网
- 寻找最小的k个数
- Microsoft HoloLens 技术解谜(下)
- 《Head First 设计模式》学习笔记——迭代模式 + 组合模式
- CF 604B More Cowbell#贪心
- ruby开发环境搭建
- 学会分析YUV数据
- 使用+Leapms查看线性规划的单纯形表,itsme命令
- WebApi发布到外网提示404问题
- 1024. Palindromic Number (25)
- android greenDao使用
- C# Notepad++ 环境配置
- Java封装概述
- systemd&;systemctl
- Hibernate- 条件查询
- 【转】VS 安全开发生命周期(SDL)检查
- java.net.ConnectException: failed to connect to /10.0.2.2 (port 80): connect
热门文章
- CODEFORCES #272 DIV2[为填完]
- 初始化IoC容器(Spring源码阅读)
- Servlet入门和ServletConfig、ServletContext
- NCache:最新发布的.NET平台分布式缓存系统
- http学习笔记2(URL)
- C# .Net 使用zxing.dll生成二维码,条形码
- 调试PostSharp DEMO 遇到的问题
- VMware vSphere 服务器虚拟化之二十 桌面虚拟化之准备虚拟桌面模版
- [C++STDlib基础]关于C标准输入输出的操作——C++标准库头文件<;cstdio>;
- sqlplus中显示sql执行计划和统计信息