如何在代码中处理来自API /库的异常?

5Yr*_*DBA 2 .net c#

我有以下几行代码:

FileInfo dbFile = new FileInfo(fileName);
dbFileSize = (long)dbFile.Length / 1024;//KB
Run Code Online (Sandbox Code Playgroud)

有8个可能的例外new FileInfo(fileName)dbFile.Length来电.我不能忽视它们.我必须抓住它们.

您将如何处理这8个例外情况?单独抓(太多行)?抓住超级Exception赛车只抓一个?要么 ...

Joh*_*ers 9

正确的操作是忽略它们,除非您可以实际修复它们.

它们将传播到调用代码,这些代码可能能够修复它们,或者记录它们,或者其他东西.但除非你能改善你的水平,否则根本不要抓住它们.

  • 绝对同意.如果您不知道如何处理它们,那么不要将它们"隐藏"在调用代码中(可能"知道"该做什么).我的2美分:从不通过写"catch(Exception){...}"来捕获异常 - 这是一种不好的做法. (2认同)