Openjdk InputStreamReader



Openjdk Inputstreamreader



java.lang.Object java.io.Reader java.io.InputStreamReader
実装されているすべてのインターフェース:
閉じることができます自動クローズ可能、読みやすい
直接既知のサブクラス:
FileReader
public class InputStreamReader extends  Reader  
InputStreamReaderは、バイトストリームから文字ストリームへのブリッジです。バイトを読み取り、指定されたものを使用してそれらを文字にデコードします。文字コード 。使用する文字セットは、名前で指定するか、明示的に指定するか、プラットフォームのデフォルトの文字セットを受け入れることができます。

InputStreamReaderのread()メソッドの1つを呼び出すたびに、基になるバイト入力ストリームから1つ以上のバイトが読み取られる場合があります。バイトから文字への効率的な変換を可能にするために、現在の読み取り操作を満たすために必要な数よりも多くのバイトが、基になるストリームから先に読み取られる場合があります。

最高の効率を得るには、InputStreamReaderをBufferedReader内にラップすることを検討してください。例えば:



 BufferedReader in = new BufferedReader(new InputStreamReader(System.in)); 
以来:
1.1
関連項目:
BufferedReaderInputStream文字コード

フィールドサマリー

クラスjava.ioで宣言されたフィールド。 読者

ロック

コンストラクターの要約

コンストラクター
ビルダー 説明
InputStreamReader (( InputStream の) デフォルトの文字セットを使用するInputStreamReaderを作成します。
InputStreamReader (( InputStream で、文字列charsetName) 名前付き文字セットを使用するInputStreamReaderを作成します。
InputStreamReader (( InputStream で、Charset cs) 指定された文字セットを使用するInputStreamReaderを作成します。
InputStreamReader (( InputStream で、CharsetDecoder dec) 指定された文字セットデコーダーを使用するInputStreamReaderを作成します。

メソッドの概要

修飾子とタイプ 方法 説明
getEncoding () このストリームで使用されている文字エンコードの名前を返します。
int 読んだ () 1文字を読み取ります。
int 読んだ (char [] cbuf、int offset、int length) 文字を配列の一部に読み込みます。
ブール値 準備 () このストリームを読み取る準備ができているかどうかを示します。

クラスjava.ioで宣言されたメソッド。 読者

選ぶマークmarkSupportednullReader読んだ読んだリセットスキップtransferTo

クラスjava.langで宣言されたメソッド。物体

clone、equals、finalize、getClass、hashCode、notify、notifyAll、toString、wait、wait、wait

コンストラクターの詳細

InputStreamReader

public InputStreamReader(InputStream in)
デフォルトの文字セットを使用するInputStreamReaderを作成します。
パラメーター:
in-InputStream

InputStreamReader

public InputStreamReader(InputStream in, String charsetName) throws UnsupportedEncodingException
名前付き文字セットを使用するInputStreamReaderを作成します。
パラメーター:
in-InputStream
charsetName-サポートされている名前文字コード
スロー:
UnsupportedEncodingException -指定された文字セットがサポートされていない場合

InputStreamReader

public InputStreamReader(InputStream in, Charset cs)
指定された文字セットを使用するInputStreamReaderを作成します。
パラメーター:
in-InputStream
cs-文字セット
以来:
1.4

InputStreamReader

public InputStreamReader(InputStream in, CharsetDecoder dec)
指定された文字セットデコーダーを使用するInputStreamReaderを作成します。
パラメーター:
in-InputStream
dec-文字セットデコーダー
以来:
1.4

メソッドの詳細

getEncoding

public String getEncoding()
このストリームで使用されている文字エンコードの名前を返します。

エンコーディングに履歴名がある場合、その名前が返されます。それ以外の場合は、エンコーディングの正規名が返されます。

このインスタンスがで作成された場合 InputStreamReader(InputStream、String) コンストラクターの場合、エンコードに対して一意である返される名前は、コンストラクターに渡される名前とは異なる場合があります。このメソッドはストリームが閉じられている場合はnull。



戻り値:
このエンコーディングの履歴名、またはストリームが閉じられている場合はnull
関連項目:
文字コード

読んだ

public int read() throws IOException
1文字を読み取ります。
オーバーライド:
読んだ クラスで 読者
戻り値:
読み取られた文字、またはストリームの終わりに達した場合は-1
スロー:
IOException -I / Oエラーが発生した場合

読んだ

public int read​(char[] cbuf, int offset, int length) throws IOException
文字を配列の一部に読み込みます。
指定:
読んだ クラスで 読者
パラメーター:
cbuf-宛先バッファー
offset-文字の保存を開始するオフセット
長さ-読み取る最大文字数
戻り値:
読み取られた文字数、またはストリームの終わりに達した場合は-1
スロー:
IOException -I / Oエラーが発生した場合
IndexOutOfBoundsException-Ifオフが負、またはlenが負、またはlenはより大きいcbuf.length-オフ

準備

public boolean ready() throws IOException
このストリームを読み取る準備ができているかどうかを示します。 InputStreamReaderは、その入力バッファーが空でない場合、または基になるバイトストリームからバイトを読み取ることができる場合に準備ができています。
オーバーライド:
準備 クラスで 読者
戻り値:
次のread()が入力をブロックしないことが保証されている場合はtrue、それ以外の場合はfalse。 falseを返すことは、次の読み取りがブロックされることを保証しないことに注意してください。
スロー:
IOException -I / Oエラーが発生した場合