0

Application のサブクラスに、テキスト ファイルから情報を読み取る必要があるメソッドがあります。このメソッドを Activity のサブクラスで使用しましたが、うまくいきました。

InputStream is = this.getResources().openRawResource(R.raw.elements);
BufferedReader reader = new BufferedReader(new InputStreamReader(is));
String str = reader.readLine();

ただし、Application サブクラスでこのコードを使用すると、null ポインター例外が発生します。

テキスト ファイルは res/raw フォルダーにあります。

4

1 に答える 1

0
    private String readTxt() {

    InputStream inputStream = getResources().openRawResource(R.raw.elements);

    ByteArrayOutputStream byteArrayOutputStream = new ByteArrayOutputStream();

    int i;
    try {
        i = inputStream.read();
        while (i != -1) {
            byteArrayOutputStream.write(i);
            i = inputStream.read();
        }
        inputStream.close();
    } catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

    return byteArrayOutputStream.toString();
}

完全に動作、ソース: /res/raw のテキスト ファイルを表示

于 2012-05-28T20:17:20.437 に答える