我是否必须编写自己的方法来取消设置文件夹上的readony,并将其';以C#表示的s内容?
我有一个文件夹,里面有一些文件夹,这些文件夹里有一些文件。碰巧,这些文件可能是只读的,这对我来说是不可接受的 问题是我是否必须编写代码来递归地取消所有文件上的readonly设置?写起来并不难,但是有没有标准的.NET方法呢 我当前的解决方案:我是否必须编写自己的方法来取消设置文件夹上的readony,并将其';以C#表示的s内容?,c#,.net,filesystems,directory,readonly,C#,.net,Filesystems,Directory,Readonly,我有一个文件夹,里面有一些文件夹,这些文件夹里有一些文件。碰巧,这些文件可能是只读的,这对我来说是不可接受的 问题是我是否必须编写代码来递归地取消所有文件上的readonly设置?写起来并不难,但是有没有标准的.NET方法呢 我当前的解决方案: private static void SetReadOnly( string path, bool readOnly ) { foreach ( string directory in Directory.GetDirectories( pat
private static void SetReadOnly( string path, bool readOnly )
{
foreach ( string directory in Directory.GetDirectories( path ) )
{
DirectoryInfo di = new DirectoryInfo( directory );
if ( readOnly )
{
di.Attributes &= FileAttributes.ReadOnly;
}
else
{
di.Attributes ^= FileAttributes.ReadOnly;
}
SetReadOnly( directory, readOnly );
}
foreach ( string file in Directory.GetFiles( path ) )
{
FileInfo fi = new FileInfo( file );
if ( readOnly )
{
fi.Attributes &= FileAttributes.ReadOnly;
}
else
{
fi.Attributes ^= FileAttributes.ReadOnly;
}
}
}
不,没有内置的方法。您必须自己编写,而您现有的代码看起来可以完成这项工作