检查目录是否存在和权限

时间:2019-06-21 09:38:38

标签: c# .net

我正在尝试编写代码以在特定目录中创建文件。

尽管我可以管理代码以检查文件是否存在,还可以创建目录(如果不存在),但是如何检查我是否有权在指定位置创建目录和/或文件。

2 个答案:

答案 0 :(得分:1)

尝试创建目录或文件,如果没有权限,将引发异常,您可以根据需要捕获并执行该操作。

function mail_from_address($email)
{
    return 'example@example.com';
}
add_filter('wp_mail_from', 'mail_from_address');
function mail_from_name($name)
{
    return 'myname';
}
add_filter('wp_mail_from_name', 'mail_from_name');

答案 1 :(得分:0)

最简单的方法是尝试对其进行写入。如果当前用户无法写此异常,则会得到一个异常。

话虽如此,您应该可以检查是否可以像这样写一个文件夹:

string directoryName = GetTheDirectory();

PermissionSet permissionSet = new PermissionSet(PermissionState.None);    

FileIOPermission writePermission = new FileIOPermission(FileIOPermissionAccess.Write, directoryName);

permissionSet.AddPermission(writePermission);

if (permissionSet.IsSubsetOf(AppDomain.CurrentDomain.PermissionSet))
{
   // You have write permissions
}
else
{
   // You don't have write permissions
}