我有以下从文件中读取数据的功能。 如果我收到IO异常,我想完成此函数的运行并继续执行此程序中的下一个函数。
我应该在代码中添加什么?
我试图将继续添加到finnally块但是我得到错误"继续不能在循环之外使用"。
public void readFromFile() throws Exception
{
BufferedReader f= new BufferedReader(new FileReader("C:\\T.DAT"));
String l="";
try{
do{
l = f.readLine();
if(l != null)
{
Car a = new Car();
a.setFromLine(l);
alCars.add(a);
}
} while(line !=null);
}
catch (Exception e)
{
System.out.println("can't open file IO ERROR. program is continueing");
}
finally
{
f.close();
}
}
答案 0 :(得分:0)
只需将return;
放入finally块
答案 1 :(得分:0)
你不能在循环之外使用continue。 赶上并最终在循环之外。
将 try - catch - finally 插入 do while 子句,它会起作用。
如果你使用catch阻止,你不必在方法签名后使用throws。
简单地在catch块中捕获异常,最后做一些事情。 首先捕获IOException,并在所有其他情况下执行另一个异常捕获。
try {
//
}
catch ( IOException e ) {
System.out.println("IO Exception occured");
}
catch ( Exception e ) {
//other exceptions
}
finally {
//deinitialize
}
我不确定是否发生ioexception,然后最后你必须关闭文件。也许它是一个空对象
答案 2 :(得分:0)
您无需做任何事情。执行finally块后,代码将从函数返回。