导航

C#获取并设置文件属性

Posted on 2009-01-06 11:52  ccjvl  阅读(3372)  评论(0编辑  收藏  举报

如果为了保护文件夹,可以隐藏,也可以伪装文件夹
private void button3_Click(object sender, EventArgs e)
{  
    FileAttributes MyAttributes = File.GetAttributes(textBox1.Text); 
    File.SetAttributes(textBox1.Text, FileAttributes.Normal);//设置文件夹属性为正常
    Directory.SetCreationTime(textBox1.Text, dateTimePicker1.Value);//设置文件夹创建时间
    Directory.SetLastWriteTime(textBox1.Text, dateTimePicker2.Value);//设置文件夹最近被修改时间
    Directory.SetLastAccessTime(textBox1.Text, dateTimePicker3.Value);//设置文件夹最近被访问时间
    if (checkBox1.Checked == true)
        File.SetAttributes(textBox1.Text, FileAttributes.ReadOnly);//设置成只读文件夹
    FileAttributes MyAttributes = File.GetAttributes(textBox1.Text);
    if (this.checkBox2.Checked == true)
        File.SetAttributes(textBox1.Text, MyAttributes | FileAttributes.System);//设置添加系统文件夹
    MyAttributes = File.GetAttributes(textBox1.Text);
    if (this.checkBox3.Checked == true)
        File.SetAttributes(textBox1.Text, MyAttributes | FileAttributes.Hidden);//设置添加隐藏文件夹
    MyAttributes = File.GetAttributes(textBox1.Text);
    if (this.checkBox4.Checked == true)
        File.SetAttributes(textBox1.Text, MyAttributes | FileAttributes.Archive);//设置添加归档文件夹
    MessageBox.Show("设置文件夹属性操作成功!", "信息提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
}

注:textBox1.Text是一个文件夹
//但用delete可以删!

 

 

如求得文件的存档属性,设置其为只读属性

问题补充:设置属性,出来了
File.SetAttributes(Server.MapPath("ok.txt"),FileAttributes.ReadOnly);//只读属性

Response.Write("设置成功!");
//获取属性
Response.Write(Server.MapPath("ok.txt")+"的属性是:"+File.GetAttributes(Server.MapPath("ok.txt")));

string theDirectory=@"XXXX/YYYY";
DirectoryInfo dir=new DirectoryInfo(theDirectory);

FileInfo[] filesInDir=dir.GetFiles();
foreach(FileInfo file in filesInDir)
{
string fileName=file.FileName;
file.SetAttributes(fileName, System.IO.FileAttributes.Normal);

//没有环境,文本写的代码,未测试
}