如何检查是否File

如何检查是否File

本文介绍了如何检查是否File.Delete()一定会成功,但不尝试它,在C#中?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

在C#中,System.IO.File.Delete(文件路径),要么删除指定的文件或引发异常。如果当前用户没有权限删除这个文件,它会引发一个UnauthorizedAccessException。

In C#, System.IO.File.Delete(filePath) will either delete the specified file, or raise an exception. If the current user doesn't have permission to delete the file, it'll raise an UnauthorizedAccessException.

有没有一些方法的时候,我可以提前判断是否删除可能引发UnauthorizedAccessException与否(即查询ACL以查看当前线程的标识是否有权限删除指定文件?)

Is there some way that I can tell ahead of time whether the delete is likely to throw an UnauthorizedAccessException or not (i.e. query the ACL to see whether the current thread's identity has permission to delete the specified file?)

基本上,我希望做的:

if (FileIsDeletableByCurrentUser(filePath)) {
    /* remove supporting database records, etc. here */
    File.Delete(filePath);
}

但我不知道如何实现FileIsDeletableByCurrentUser()。

but I have no idea how to implement FileIsDeletableByCurrentUser().

推荐答案

看看这篇文章 - <一个href="http://www.$c$cproject.com/KB/files/UserFileAccessRights.aspx">http://www.$c$cproject.com/KB/files/UserFileAccessRights.aspx

这篇关于如何检查是否File.Delete()一定会成功,但不尝试它,在C#中?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-05 17:51