0
我正在扫描文件夹中的文件,我需要以任何方式获取当前用户的每个文件的权限以表示为字符串。 因此,对于附加文件的属性,我想代表f-m-r-w 字符串。获取当前用户的文件权限.net
我试图在我这样的扫描循环中完成此操作,但获取空字符串。你能暗示我应该从哪里出发或选择另一种方法?提前致谢!
string permissionShort = string.Empty;
DirectorySecurity dSecurity = Directory.GetAccessControl(_directory.FullName);
foreach (FileSystemAccessRule rule in dSecurity.GetAccessRules(true, true, typeof(NTAccount)))
{
if (rule.FileSystemRights == FileSystemRights.Write)
permissionShort = permissionShort + "x";
if (rule.FileSystemRights == FileSystemRights.Read)
permissionShort = permissionShort + "x";
if (rule.FileSystemRights == FileSystemRights.AppendData)
permissionShort = permissionShort + "x";
if (rule.FileSystemRights == FileSystemRights.Modify)
permissionShort = permissionShort + "x";
if (rule.FileSystemRights == FileSystemRights.ExecuteFile)
permissionShort = permissionShort + "x";
}
大概应该是副本http://stackoverflow.com/questions/1339976/how-to-check-if-any-flags-of-a-flag-combination-are-set的,但需要一些调整问题...所以只是评论,而不是VTC。 –