DirectoryInfo的,FileInfo的和很长的路(DirectoryInfo, FileI

2019-07-05 17:06发布

我尝试用DirectoryInfo的,FileInfo的工作很长的路。

  • 我尝试使用\\。\ C:\路径长(我得到的fileInfo和DirectoryInfo的非法卡拉科特)
  • 我尝试使用file:// C:/长路径(我得到了URI不支持)

我可以使用在〜路径或别的东西。

我读这个职位 ,但我想使用调用API的另一种方式。 这是任何其他解决办法?

有一个从微软使用\\的文章? 在文件路径链接文本

现在的问题是我怎么能有很长的路的工作,和DirectoryInfo中,并为的FileInfo路径谁更不再是那个256字符

Answer 1:

望着在.NET长路径 的博客文章 系列 ,它看起来像到P要在Win32 API / Invoke的是目前唯一的解决方案,比改制您的目录,这样你就不会打了极限等。



Answer 2:

图书馆可再次在这个位置。

这是一个.NET库编写针对.NET Framework 2.0和可用于从.NET应用程序访问很长的文件夹和文件。

由于.NET Framework不支持长文件名:-(我不得不写调用WIN32 API和包装像函数库System.IO 。虽然它不是一个完整的副本System.IO它确实有大部分对象和可用的功能。

Delimon.Win32.IO替代的基本文件功能System.IO长路径名字符支持多达32,767个字符,从而再见MAX_PATH问题

你有没有遇到这个问题?

System.IO.PathTooLongException了未处理。

信息:

指定的路径,文件名,或者两者都太长。 完全合格的文件名必须少于260个字符,并且目录名称必须少于248个字符。



Answer 3:

Delimon.Win32.I O库(V4.0)也可以,它是写在.NET framework 4.0,并且可以使用,也可以在x86和x64系统。



Answer 4:

我过去解决这个问题的一种方法是使用库从Delimon称为Delimon.Win32.IO。 它看起来像他的网站http://www.delimon.be是下降的时刻。 但我已经用它在过去的一个项目,它的工作就像一个冠军。 我可以尝试追查你今晚稍后或只是试图找到一个有效的链接到它的地方,通过谷歌。 干杯。 这里是另一个链接交谈讨论这个问题。

http://social.msdn.microsoft.com/Forums/en-US/netfxbcl/thread/2541a9b9-acd7-4338-89b1-dfc0408e41b5



Answer 5:

作为.NET 4.6.2,这个问题可以通过更改本地计算机的组策略来解决,允许在Win 10+和服务器长2016+路径。

经过测试和确认。

https://blogs.msdn.microsoft.com/jeremykuhne/2016/07/30/net-4-6-2-and-long-paths-on-windows-10/



文章来源: DirectoryInfo, FileInfo and very long path