的代碼繼續我的應用程序:當發生異常
String[] logs={"a","b","c"};
int errors=0;
for(String str:logs){
try{
LogParser.parse(str);
} catch(ParseException e){
error++;
continue; // Seems that, this two line codes are not reached.
}
}
在上面的代碼中,LOGPARSER的用於分析相結合模式的Tomcat的日誌,當獲取日期格式的數據,我用的是SimpleDateFormat的解析它到一個Java.Util.Date對象,那麼它可能會拋出一個ParseException.the日誌數組這裏只是用於拋出異常。
但是,當解析一個日誌時出現這個異常時,應用程序將退出,我希望它繼續下一個日誌。
如何製作它?
我已經閱讀教程:
http://download.oracle.com/javase/tutorial/essential/exceptions/catchOrDeclare.html。
它表示Error和RuntimeException不是主try try塊,應用程序將退出。
但java.text.ParseException擴展了Exception,爲什麼它不能服從我的try-catch塊? 由於「錯誤」變量不要+1,
我也想過用這個:
是的,它的工作原理,但是當日志被正確解析,錯誤將還可以添加,它不應該。
任何人都可以告訴我爲什麼嗎?
你確定它是一個ParseException嗎?應用程序退出時應該包含堆棧跟蹤,包括異常類名稱。 – Thilo 2010-10-19 01:42:56
您使用哪種LogParser?檢查它的文檔或源代碼,如果你有權限查看它是否在異常時用System.exit()退出。 – 2010-10-19 02:12:21