首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何删除只读文件?

如何删除只读文件?
EN

Stack Overflow用户
提问于 2008-11-05 17:13:08
回答 5查看 45.4K关注 0票数 72

我有一个垃圾目录,我把下载文件、一次性项目、电子邮件草稿和其他一些可能在几天内有用但不需要永远保存的东西放在这里。为了阻止这个目录接管我的机器,我写了一个程序,它将删除所有超过指定天数的文件,并记录一些关于删除的文件数量和大小的统计数据,只是为了好玩。

我注意到一些项目文件夹存在的时间比它们应该存在的时间要长得多,所以我开始调查。特别是,我使用过SVN的项目的文件夹似乎一直留在那里。事实证明,.svn目录中的只读文件没有被删除。我刚刚在一个只读文件上做了一个简单的测试,发现System.IO.File.DeleteSystem.IO.FileInfo.Delete不会删除一个只读文件。

我不关心保护这个特定目录中的文件;如果有重要的东西在那里,那就是错误的位置。有没有可以删除只读文件的.NET类,或者我必须检查只读属性并剥离它们?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2008-11-05 17:23:24

根据File.Delete's documentation,的说法,您必须剥离只读属性。您可以使用File.SetAttributes()设置文件的属性。

using System.IO;

File.SetAttributes(filePath, FileAttributes.Normal);
File.Delete(filePath);
票数 157
EN

Stack Overflow用户

发布于 2008-11-05 17:19:14

根据File.Delete's documentation,的说法,您必须剥离只读属性。您可以使用File.SetAttributes()设置文件的属性。

票数 47
EN

Stack Overflow用户

发布于 2011-11-29 20:21:09

如果您碰巧使用的是FileInfo对象,则等效项为:

file.IsReadOnly = false;
file.Delete();
票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/265896

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档