【发布时间】:2018-11-05 16:32:54
【问题描述】:
当路径超过 260 个字符时,DirectoryInfo.Create 会抛出 DirectoryNotFoundException。我了解无法创建目录,但该方法也支持PathTooLongException。为什么不扔呢?当路径的长度 >248 且 PathTooLongException。两种情况不应该抛出相同的异常吗?
我的代码:
DirectoryInfo fullArchiveDirectoryInfo = new DirectoryInfo(fullArchiveDirectory);
fullArchiveDirectoryInfo.Create();
我的项目面向 .NET Framework 4.6.2。
(更新 1)
例如:
- C:(...)-9223372036854775808\86dcadfc1e0746649408 - 264 个字符 -
DirectoryNotFoundException - C:(...)-9223372036854775808\86dcadfc1e074664 - 260 个字符 -
PathTooLongException - C:(...)-9223372036854775808\f872 - 248 个字符 - 无例外
附加说明:我使用 LinqPad (v5.31.00) 进行了测试,在那里我总是得到一个路径为 264 个字符的PathTooLongException。
【问题讨论】:
-
因此,如果您使用长度为 250 的路径(例如),您会得到
PathTooLongException? -
你能补充一些例子吗?
-
@TimSchmelter 是的。
-
我投票结束这个问题是重复的,尽管我仍然认为最正确的例外是
PathTooLongException。
标签: c# directoryinfo