2

から文字を「未読」にする必要がありInputStreamReaderます。その目的のために、私は使用markしたかったのですresetが、内部バッファや文字のキューを維持していないため、クラスにmarkSupported戻ります。falseInputStreamReader

私は知ってBufferedInputStreamいますが、PushbackInputStream文字が必要ですが、バイトベースでバッファリングするため、ここではどちらも適切ではありません。

Javaは、文字を読み取ることができないバッファ付き文字リーダーを提供していますか?実際、それをさらに制約させてください。私は(先読みの目的で)1文字だけ未読にする必要があります。私は本当に自分の先読みを維持する必要がありますか?

4

3 に答える 3

7

2つのバイトストリームベースのクラスjava.io.BufferedInputStreamjava.io.PushbackInputStream、同じパッケージに対応する文字ストリームベースのクラスがあります。

java.io.PushbackReader
java.io.BufferedReader
于 2009-11-03T12:17:15.467 に答える
3

java.io.BufferedReaderを試しましたか?

于 2009-11-03T12:17:54.937 に答える
2

を使用して入力ストリームをラップできますBufferedReader

Reader markedReader = new BufferedReader(inputStreamReader) ;

バッファリングされたリーダーは、マークをサポートし、文字を読み取ります。

于 2009-11-03T12:21:36.163 に答える