2012-05-11 9 views
0

可能性の重複:
exception handeling, creating log and continue the program in JAVA例外handeling、ログを作成しても、JAVAでの例外occours後にプログラムを継続

私は約10で結果をキャプチャJAVAでプログラムを設計していますiterations、その後、私はすべての結果をログファイルに書き込む必要があります。何か例外が発生した場合、それはテキストファイルに書き込まれ、2番目にプログラムは停止してはならないという解決策が必要です。最後まで反復が完了しました。つまり、何らかのエラーが発生した場合反復のどの部分でもエラーの名前で言及されなければならず、プログラムはここで停止してはいけません。ログファイルを更新してログファイルを更新する必要があります。

cuz my class isカントは、すべてここに貼り付ける1800本のラインの周りに...

float j,i,t; 
int []a={1,2,0,3,4,5}; 
int []b={6,6,9,3,4,5}; 
for(int i=0;i<6;i++) 
{ 
    j=2/a[i]; 
    i=3/b[i]; 
    t=4/b[i]; 

} 

ので、ここでいくつかの例外がループを発生した場合に起因するarrray例外が発生したの値のリストで0には、このように全体の反復を停止し、私は、それをスキップしたいです壊れてはいけません。例外部分を除外してテキストファイルに書き込むだけです。

+0

複数の同様の質問を投稿しないでください。オリジナルを編集するだけです:http://stackoverflow.com/questions/10546504/exception-handeling-creating-log-and-continue-the-program-in-java – yatul

+0

sry、これに新しい、私は削除しようとしていた前の1つが失敗しました – rahul

答えて

1

はこれを試してみてください。

float j; 
int []a={1,2,0,3,4,5}; 
for(int i=0;i<6;i++) 
{ 
    try{ 
     j=2/a[i]; 
    catch(Exception e){ //a more specific exception would be preferable, but I don't know what other exceptions may occur here 
     System.out.println("Exception occurred at iteration: "+i); 
    } 
} 

編集:はちょうど配列が小さすぎる場合にも例外が発生することがありますprint文で値を持つ、実現します。

第二編集:例外処理、すなわちif(a[i] == 0)簡単なチェックほど効率的ではありませんので、チェックを使用すると、このついて行くのより効率的な方法だろう。

+0

これをループの内側に配置します。表示されているコードのまわりにあります。 –

+0

sry、私は部分を編集する必要があります、私はqueを記述することで大きな間違いをしました plz編集部分をもう一度見てください... – rahul

+0

今、私はすべての結果を得なければなりません、すべての結果がほしいです。私のprogがスマートに動作し、例外を残しておきたい...他の値に影響を与えずに – rahul

1

例外処理の詳細については、this questionの回答をお読みください。

関連する問題