1. ホーム
  2. java

[解決済み] InputStreamをBufferedReaderに変換する

2022-04-25 23:47:03

質問

AndroidでassetsディレクトリからInputStreamを使ってテキストファイルを一行ずつ読み込もうとしています。

InputStreamをBufferedReaderに変換して、readLine()を使えるようにしたいのですが、どうすればいいですか?

次のようなコードがあります。

InputStream is;
is = myContext.getAssets().open ("file.txt");
BufferedReader br = new BufferedReader (is);

3行目で次のようなエラーを落とします。

この行に複数のマーカーがある
コンストラクタ BufferedReader (InputStream) は未定義です。

私がC++でやろうとしていることは、次のようなことだ。

StreamReader file;
file = File.OpenText ("file.txt");

line = file.ReadLine();
line = file.ReadLine();
...

何が間違っているのか、どうすればいいのか。ありがとうございます。

解決方法は?

BufferedReader をラップすることはできません。 InputStream を直接指定することができます。それは別の Reader . この場合、次のようなことをしたい。

BufferedReader br = new BufferedReader(new InputStreamReader(is, "UTF-8"));