如何使用c#更改文件夹中每个文件的“只读文件”属性

本文关键字:文件 只读 只读文件 属性 何使用 文件夹 | 更新日期: 2023-09-27 17:48:53

如何使用c#更改文件夹中每个文件的只读文件属性?

感谢

如何使用c#更改文件夹中每个文件的“只读文件”属性

foreach (string fileName in System.IO.Directory.GetFiles(path))
{
    System.IO.FileInfo fileInfo = new System.IO.FileInfo(fileName);
    fileInfo.Attributes |= System.IO.FileAttributes.ReadOnly;
    // or
    fileInfo.IsReadOnly = true;
}

您可以尝试以下操作:迭代每个文件和子目录:

public void Recurse(DirectoryInfo directory)
{
    foreach (FileInfo fi in directory.GetFiles())
    {
        fi.IsReadOnly = false; // or true
    }
    foreach (DirectoryInfo subdir in directory.GetDirectories())
    {
        Recurse(subdir);
    }
}

在循环中使用File.SetAttributes迭代Directory.GetFiles

如果你想使用模式匹配删除只读属性(例如,文件夹中所有扩展名为.txt的文件),你可以尝试这样的方法:

Directory.EnumerateFiles(path, "*.txt").ToList().ForEach(file => new FileInfo(file).Attributes = FileAttributes.Normal);