【C#】简单解决PathTooLong的Exception

简介: 原文:【C#】简单解决PathTooLong的Exception 前提 windows系统路径的最大长度限制是260个字符(听说.Net 4.6.2,取消了这个限制),而Linux或者Unix系统的好像是4K个字符。
原文: 【C#】简单解决PathTooLong的Exception

前提

windows系统路径的最大长度限制是260个字符(听说.Net 4.6.2,取消了这个限制),而Linux或者Unix系统的好像是4K个字符。所以如果一个文件夹由Linux系统创建,然后由windows系统读取处理的话,就会出现PathTooLong的异常。

解决方法

其实很简单

  1. 在VS中添加如下Nuget包:
    MicroSoft.Experimental.IO

  2. 在用到的地方把系统的File和Directory替换为LongPathFile和LongPathDirectory即可。如:

var items = LongPathDirectory.EnumerateFileSystemEntries(path);

其它

之前还用过一个Delimon.Win32.I​O 这个包,首先向Delimon大神表示敬意,这个包确实很强大,无奈没有EnumerateFileSystemEntries()方法,放弃了。

目录
相关文章
|
8月前
|
Java iOS开发
@try{}@catch (NSException *exception) {}在object c中的应用及问题
@try{}@catch (NSException *exception) {}在object c中的应用及问题
53 0
|
Java
Exception 和 Error 有什么区别?
Java 平台对不同的异常进行了分类,具体被分为了 Exception 和 Error,他们都是继承了 Throwable 类。
117 0
Exception 和 Error 有什么区别?
|
存储 前端开发 Java
Exception 和 Error
Exception 和 Error
92 0
|
Java API Spring
RuntimeException和Exception的区别
RuntimeException和Exception的区别
247 0
|
安全 Java 数据库连接
Exception和Error有什么区别吗
Exception和Error有什么区别吗
236 1
|
安全 Java 数据库连接
Java中的异常处理详解(try、catch、finally、throw、throws)
Java中的异常处理详解(try、catch、finally、throw、throws)
327 1
Exception和Error 有什么区别
Exception和Error 有什么区别
163 0
Exception和Error 有什么区别
|
安全 Java 程序员
Exception和Error的区别
Exception和Error的
225 0
|
安全
Error、Exception区别
Error、Exception区别
137 0