【发布时间】:2011-09-28 10:39:39
【问题描述】:
据我了解,ReadAllLines 会打开一个文件,然后返回该文件中的所有行,然后关闭该文件/流。现在我有了这段代码:
try
{
string[] lines = File.ReadAllLines(path);
}
catch(IOException)
{
Console.WriteLine("File doesnt exist in : " + path);
}
我这样做是为了如果path 目录中的文件不存在,它会抛出错误消息。我的问题:有必要吗?由于我不知道 Microsoft 是如何实现 ReadAllLines(),我真的不知道它是否已经在函数实现中内置了 try catch..
但是,我可以“猜测”ReadAllLines() 每次完成读取文件流时总是会关闭文件流。这就是我没有运行应该包含在 finally{} 块中的 cleanup 代码的原因。
有人可以解释/给我确认一下吗?任何帮助,将不胜感激。如果问题不清楚,请告诉我。谢谢。
【问题讨论】:
-
阅读 MSDN 中的文档,通常他们会解释并详细说明抛出了哪些异常以及在哪些情况下以及该方法的行为方式。
标签: c# asp.net exception try-catch