FileNotFoundException
スレッドをx秒間中断してファイルを再読み込みすることにより、Javaで処理しようとしています。この背後にある考え方は、実行時にプロパティを編集することです。
問題は、プログラムが単に終了することです。このソリューションを実現する方法はありますか?
FileNotFoundException
スレッドをx秒間中断してファイルを再読み込みすることにより、Javaで処理しようとしています。この背後にある考え方は、実行時にプロパティを編集することです。
問題は、プログラムが単に終了することです。このソリューションを実現する方法はありますか?
Bjarne Stroustroup による C++ 用の古き良きレシピを Java に移植しました。
Result tryOpenFile(File f) {
while (true) {
try {
// try to open the file
return result; // or break
} catch (FileNotFoundException e) {
// try to recover, wait, whatever
}
}
}
ファイルの読み込みをループで実行し、ファイルが正常に読み取られた後に、条件が依存する変数を設定します。ループ内で try-catch ブロックを使用し、catch ブロックで待機します。
いくつかのコード スニペットは役に立ちますが、次のいずれかが問題になる可能性があります。
catch (Exception e)
スローされている例外を確認してください。幸運を
例外がキャッチされない場合、スレッドは終了します。これがメイン スレッドの場合、アプリケーションは終了します。次のことを試してください。
try
{
props.load(...);
}
catch (FileNotFoundException ex)
{
Thread.sleep(x * 1000);
props.load(...);
}