日期:2014-05-18  浏览次数:20404 次

怎样区分异常的种类??求助
当我把一个文件下载到本机的d://download文件夹中
由于这个文件夹中已经存在与这个文件同名的文件     所以系统会抛出异常
我怎样才能知道系统抛出的这个异常是这个原因造成的而不是其它的原因
代码如何实现

------解决方案--------------------
这是一个可预知的“错误”,你应该进行显示的检查,而不是用异常

if(!System.IO.File.Exists(path)) {
//....
}
------解决方案--------------------
就是说,你在Catch的时候不要只使用Catch(Exception ex)这样笼统的异常对象,
你可以将你想到的在这个操作中可能发生的异常种类在Catch(Exception ex)之前进行捕捉
代码如Jinglecat(晓风残月 > > 问题需简洁,错误要详细) 列出的那样,

Exception在.NET是一个类的继承体系,有不同的异常类来表明所发生的异常,在特定的异常类
中,您可以获得该异常详细的信息,从而可以作出更加准确的异常恢复操作.

当.NET Framework所提供的异常类体系不能满足您的要求的时候,您还可以自己创建定制的异常类以提供更加详细的异常信息