gpt4 book ai didi

C#:如何检查我是否可以读取和/或删除目录

转载 作者:太空狗 更新时间:2023-10-29 22:11:34 25 4
gpt4 key购买 nike

我递归地遍历一堆目录。其中一些(如 D:\$RECYCLE.BIN\S-1-5-20)给我一个 System.UnauthorizedAccessException。我想我可以捕获它并继续前进,但我宁愿提前弄清楚。

所以,当我有一个 DirectoryInfo 对象时。我如何查看是否允许我 GetDirectories() 并可能 Delete()

最佳答案

如果你打算删除它,尝试删除它然后继续(适当处理异常)。

如果您执行检查然后删除-if-should-be-able-to-delete,则文件系统上有可能出现竞争条件,无论多么轻微。这适用于大多数文件/目录访问操作。大多数文件系统操作都设计为原子操作,将此逻辑移动到用户代码中会与这种原子性冲突,而且仍然需要处理可能引发的异常。

关于C#:如何检查我是否可以读取和/或删除目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1604183/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com