0

FileInputStreamを使用してファイルが見つからない状況に対応したいと思います。存在しないファイルをロードするアプリを実行すると、強制終了してAndroidポップアップが開きます。テキストビューのテキストを変更し、ファイルが見つからないと言って、状況に対応したいと思います。例外を変更してテキストビューを変更し、ファイルが見つからず、アプリがまだクラッシュすることを示してみました。

コードは次のとおりです。

 FileInputStream fis = null;
    String collected = null;
    try {
        fis = openFileInput("test");
        byte[] dataArray = new byte[fis.available()];
        while (fis.read(dataArray) != -1){
            collected = new String(dataArray);
        }
    } catch (FileNotFoundException e) {
        // TODO Auto-generated catch block

        e.printStackTrace();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }finally{
        try {
            fis.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }


    tv.setText(collected);
4

1 に答える 1

0

Android アプリケーションが強制終了しないようにするためのオプションは次のとおりです。a) 例外が発生するようなことは何もしない、b) 独自の try/catch ブロックで例外をキャッチする、c) アプリケーション レベルのキャッチされない例外ハンドラーをインストールする. オプション a はあまり実現可能ではなく、c はあまり役に立ちません。コード スニペットに基づいて、b を試しているようですが、これでキャッチしていない別の例外があるようです。logcat の内容は、どの例外かを示し、スタック トレースは、try/catch が必要なコード内のポイントにつながります。

于 2012-08-12T11:45:44.273 に答える