3

良い時代です!

私のAndroidアプリは、通常のJavaの組み合わせを使用して単純なテキストファイルを読み取ろうとしています

FileReader fr = new FileReader("file:///android_asset/example.txt");
BufferedReader bfr = new BufferedReader(fr);

しかし、私が何をしても、このディレクトリに別のhtmlファイルがあり、WebViewに正しく表示されていても、FilenotFoundの例外が発生します。
だから、私の質問は:
FileReaderはテキストファイルを簡単に読むために使用できますか、それともInputStreamを使用する必要がありますか?

4

3 に答える 3

8

次のようにInputStreamを実行する必要があります。次のようにコードを変更します。これが機能することを願っています。

FileInputStream fis = new FileInputStream("file:///android_asset/example.txt");
BufferedReader bfr = new BufferedReader(new InputStreamReader(fis));
于 2011-09-24T08:29:32.310 に答える
7

getAssets()メソッドを使用します。

BufferedReader br=new BufferedReader(new 
            InputStreamReader(getAssets().open("example.txt")));
于 2011-09-24T08:28:32.673 に答える
6

Androidはファイルがどこにあるかを知りません。あなたはそれらの機能を使わなければなりません。データストレージと呼ばれるセクション、特に内部ストレージと、ファイルを開いたり書き込んだりするためのAndroidContextクラスのメソッドに関するセクションを参照してください。たとえば、ContextメソッドgetFileStreamPathを使用してJava Fileオブジェクトを取得し、それをJavaFileReaderに渡すことができます。

File yourFile = getFileStreamPath(YOUR_FILENAME);
if (yourFile.exists()) {
    BufferedReader in = new BufferedReader(new FileReader(yourFile));
    ...
    in.close();
}

PSこれは非常によく似た質問回答です。

于 2012-01-30T06:26:59.173 に答える