关闭

【C#】简单解决PathTooLong的Exception

标签: windows.netpathtoolon
497人阅读 评论(0) 收藏 举报
分类:

前提

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()方法,放弃了。

0
0
查看评论

多线程文件查询代码已解决PathTooLongException异常

  • 2010-02-28 17:09
  • 30KB
  • 下载

C# 解决 PathTooLongException 重写了整个System.IO

最近,因为公司的档案管理系统需要支持长文件名,也就是260字符上限的问题,上网找了相关的资料,并且找到了外国一个牛人写的dll,在原有作者的基础上加了我们需要实现的一些方法。所加方法如下: 如大家需要取dll,请留邮箱,或之后我上传到csdn. public static DirectorySe...
  • wilsonke
  • wilsonke
  • 2013-12-27 22:32
  • 2664

C#学习笔记13——异常处理

一、概念异常是程序执行时遇到的任何错误情况或意外行为。以下这些情况都可以引发异常:您的代码或调用的代码(如共享库)中有错误,操作系统资源不可用,公共语言运行库遇到意外情况(如无法验证代码),等等。对于这些情况,应用程序可以从其中一些恢复,而对于另一些,则不能恢复。尽管可以从大多数
  • byxdaz
  • byxdaz
  • 2011-08-31 23:58
  • 2484

C# 异常类 Exception 枚举所有类型的异常

一、基础   在C# 里,异常处理就是C# 为处理错误情况提供的一种机制。它为每种错误情况提供了定制的处理方式,并且把标识错误的代码与处理错误的代码分离开来。 对.NET类来说,一般的 异常类System.Exception 派...
  • NCTU_to_prove_safety
  • NCTU_to_prove_safety
  • 2017-06-13 11:17
  • 154

解析Exception和C#处理Exception的常用方法总结

在.NET中,异常是指成员没有完成它的名称宣称可以完成的行动。在异常的机制中,异常和某件事情的发生频率无关。    异常处理四要素包括:一个表示异常详细信息的类类型;一个向调用者引发异常类实例的成员;调用者的一段调用异常成员的代码块;调用者的一段处理将要发生异常的代码块。异常类类...
  • pengze0902
  • pengze0902
  • 2016-11-27 19:45
  • 1615

C# Exception所有异常对象的基类

Exception:所有异常对象的基类。   SystemException:运行时产生的所有错误的基类。   IndexOutOfRangeException:当一个数组的下标超出范围时运行时引发。   NullReferenceException:当一个空对象被引用时运行时引发。   I...
  • bushuaibucai
  • bushuaibucai
  • 2012-03-06 11:56
  • 2696

visualization_modeling_feature_pack及安装失败解决方案

  • 2012-11-09 09:20
  • 2.01MB
  • 下载

基于过滤器实现异常处理的探索

正如你所看到的那样,今天我想和大家聊聊异常处理这个话题。对于异常处理这个话题,我相信大家都有各自的方法论。而我今天想和大家探讨的这种异常处理方案,我将其称之为基于过滤器的异常处理。我不知道这种定义是否准确,我们的项目上在要引入AOP的概念以后,我们对异常处理的关注点就从try-catch转向Inte...
  • qinyuanpei
  • qinyuanpei
  • 2017-05-28 12:41
  • 1555

C#错误异常日志记录到文件

当我们将网站布署到线上之后,为了实时了解网站的运行情况,如是否有错误页面、网站运行速度、是否有攻击等。那么我们就很有必要为网站加上错误与异常记录到日志文件,这样就可以随时查看网站的线上运行情况,另有一个好处是当网站有运行错误页面时,根据错误日志我们可以快速到定位到错误行进行排查原因、解决问题,这个是...
  • yiyelanxin
  • yiyelanxin
  • 2017-05-27 10:14
  • 1051

C#简单数据库操作

C#语言提供了丰富的数据库操作类库,极大地方便了对数据库的操作。在C#中,常用的有三种 访问数据库的模式分别为:SqlClient模式、OleDb模式和Odbc模式。其中SqlClient模式是微软老大哥专门为其产品Sql Server数据库而设计的,所以如果欲使用Sql Server数据库开发应用...
  • qq_20161893
  • qq_20161893
  • 2017-10-30 13:08
  • 289
    个人资料
    • 访问:206180次
    • 积分:2788
    • 等级:
    • 排名:第14688名
    • 原创:90篇
    • 转载:18篇
    • 译文:1篇
    • 评论:36条
    文章分类
    最新评论