文件处理中的异常

时间:2012-03-15 05:33:33

标签: java core

假设我们需要处理100个文件(逐个),如果我们在读取其中一个文件时遇到异常,则该进程应该保留该文件(并将内容放入日志中)并开始处理下一个文件:

我的想法:

for (File f: listOfFiles) {
    try {
        //implementation of processing each file
    } catch (Exception e) {
        //logging 
    }
}​

我说错了吗?

2 个答案:

答案 0 :(得分:3)

是的,应该工作。但是,您可能还希望更具体地捕获异常。

答案 1 :(得分:1)

是的!你是对的,并在finally块中放入一些代码。我的意思是关闭任何流或关闭文件本身。类似于下面的伪代码。

for(File f : listOfFiles){
   try{
      //implementation of processing each file
   }catch(Exception e){
      logException(e);
   }finally{
      //close stream or file.
   }
}