文件属性操作问题:什么文件属性会阻止文件被删除?如何编程去掉文件的只读属性?

heroyu 2004-01-04 08:27:33
我想解决的问题是这样的:根据一个的文件名搜索一个指定路径下的所有文件,若该目录下存在以这个文件名命名的文件,则将它删除。实际试验的时候发现一个问题,有些文件(比如属性为只读的)用程序删除会出错,但直接进入到目录去删除,就会弹出一个对话框问是否真的删除,按确定就可正常删除。请问有什么办法可以在程序中正常地删除这些文件?
...全文
114 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lanpa007 2004-01-04
  • 打赏
  • 举报
回复
你使用读的属性打开你要删除的文件,就是定义文件流的时候用到
new FileStream(m_filename, FileMode.Open,FileAccess.Read);
heroyu 2004-01-04
  • 打赏
  • 举报
回复
但是如果文件上有多个文件属性呢?因为System.IO.FileAttributes是一个带有[Flags]特性的枚举类型呀~
使用fileInfo.Attributes = FileAttributes.Normal会不会把文件上的其他属性去掉了?
freemice 2004-01-04
  • 打赏
  • 举报
回复
//设置Test.txt为只读
private void button1_Click(object sender, System.EventArgs e)
{
System.IO.FileInfo file1=new System.IO.FileInfo("Test.txt");
file1.Attributes=System.IO.FileAttributes.ReadOnly;
}
//设置Test.txt为正常
private void button2_Click(object sender, System.EventArgs e)
{
System.IO.FileInfo file1=new System.IO.FileInfo("Test.txt");
file1.Attributes=System.IO.FileAttributes.Normal;
}
success_victory 2004-01-04
  • 打赏
  • 举报
回复
fileInfo.Attributes = FileAttributes.Normal;
heroyu 2004-01-04
  • 打赏
  • 举报
回复
各位XDJM~ 帮帮忙吧~
heroyu 2004-01-04
  • 打赏
  • 举报
回复
另外~ 我还担心一个问题~ 除了只读会不会还有其他文件属性 阻止文件被删除?
我删除文件的方法是
fileInfo.Delete();
heroyu 2004-01-04
  • 打赏
  • 举报
回复
如果要删除的文件属性为只读的,我现在在程序中可以检测到:
if((fileInfo.Attributes & System.IO.FileAttributes.ReadOnly)>0)
{
//去除文件只读属性
}
只是不知道该怎样把文件的只读属性去掉

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧