我需要从多个文件中读取,但有时它们不可用或无法从当前用户读取。这是我用来检查文件是否有效但我认为我没有正确使用using
语句的代码。
private static bool fileAccessible(string filePath) {
using (FileStream fs = new FileStream(filePath, FileMode.Open)) {
if (fs.CanRead) {
return true;
}
else {
return false;
}
}
return false; // compiler says "unreachable code"
}
我应该在try/catch
语句之外插入using
块来捕获不可用文件引发的错误,或using
如果filePath
不可用则会FileMode.Open
继续发送错误?
奖金问题:这是检查文件是否可用且可访问的正确方法吗?如果答案为是,我可以将FileMode.Append
更改为* {
margin: 0;
padding: 0;
}
以对可写文件执行相同的检查吗?
答案 0 :(得分:0)
是的,最好使用try catch,因为某些连接问题可能会发生IO异常,或者找不到文件异常。
private static bool fileAccessible(string filePath) {
return File.Exists(filePath);
}