全パッケージ クラス階層 このパッケージ 前項目 次項目 インデックス
クラス java.security.DigestInputStream
java.lang.Object
|
+----java.io.InputStream
|
+----java.io.FilterInputStream
|
+----java.security.DigestInputStream
- public class DigestInputStream
- extends FilterInputStream
関連のメッセージダイジェストをストリームを通過するビットを使用して更新する透過的なストリームです。
メッセージダイジェスト計算を完了するには、このダイジェスト入力ストリームの read メソッドの 1 つを呼び出した後、関連のメッセージダイジェストに対して digest
メソッドの 1 つを呼びます。
このストリームをオン、オフすることは可能です (on を参照してください)。on の場合、read
の呼び出しはメッセージ ダイジェストの更新を引きおこします。ただし、off の場合には、メッセージダイジェストは更新されません。ストリームに対するデフォルトは on です。
ダイジェストオブジェクトは、ダイジェストを 1 つしか計算できないので (MessageDigest を参照)、中間的なダイジェストを計算するには、呼び出し側がそのダイジェストオブジェクトに対するハンドルを維持し、各計算対象のダイジェストに対してクローンを生成、元のダイジェストをそのままにしておく必要があることに注意してください。
- 参照:
- MessageDigest, DigestOutputStream
-
digest
- このストリームに関連するメッセージダイジェスト
-
DigestInputStream(InputStream, MessageDigest)
- 指定された入力ストリームとメッセージダイジェストを使用して、ダイジェスト入力ストリームを作成します。
-
getMessageDigest()
- このストリームに関連するメッセージダイジェストを返す。
-
on(boolean)
- ダイジェスト機能をオン、オフする。
-
read()
- 1 バイトを読み込み、メッセージダイジェストを更新する (ダイジェスト機能がオンである場合)。
-
read(byte[], int, int)
- バイト配列に読み込み、メッセージダイジェストを更新する (ダイジェスト機能がオンである場合)。
-
setMessageDigest(MessageDigest)
- 指定されたメッセージダイジェストをこのストリームに関連させる。
-
toString()
- このダイジェスト入力ストリームとその関連のメッセージダイジェストオブジェクトの文字列表現を印字する。
digest
protected MessageDigest digest
- このストリームに関連するメッセージダイジェストです。
DigestInputStream
public DigestInputStream(InputStream stream,
MessageDigest digest)
- 指定された入力ストリームとメッセージダイジェストを使用して、ダイジェスト入力ストリームを作成します。
- パラメータ:
- stream - 入力ストリーム
- digest - このストリームに関連させるメッセージダイジェスト
getMessageDigest
public MessageDigest getMessageDigest()
- このストリームに関連するメッセージダイジェストを返します。
- 返り値:
- このストリームに関連するメッセージダイジェスト
setMessageDigest
public void setMessageDigest(MessageDigest digest)
- 指定されたメッセージダイジェストをこのストリームに関連させます。
- パラメータ:
- digest - このストリームに関連させるメッセージダイジェスト
read
public int read() throws IOException
- 1 バイトを読み込み、メッセージダイジェストを更新します。 (ダイジェスト機能がオンである場合)。すなわち、このメソッドは入力ストリームから 1 バイトを読み込み、実際にそのバイトの読み込みが終了するまで次のデータの読み込みを止めます。ダイジェスト機能がオン (on を参照) の場合には、このメソッドは、そのストリームに関連するメッセージダイジェストに対して
update
を呼び出し、それによみこまれたバイトを渡します。
- 返り値:
- 読み込んだバイト
- 例外: IOException
- I/O エラーが発生する場合
- オーバーライド:
- クラス read の FilterInputStream
- 参照:
- update
read
public int read(byte b[],
int off,
int len) throws IOException
- バイト配列に読み込み、メッセージダイジェストを更新します (ダイジェスト機能がオンである場合)。すなわち、このメソッドは、入力ストリームから配列
b
の中に、オフセット off
を起点として len
バイトまで読み込みます。このメソッドは、データが実際に読み込まれるまで、次に読み込むのを止めます。ダイジェスト機能がオン (on を参照) の場合には、このメソッドは、そのストリームに関連するメッセージダイジェストに対して update
を呼び出し、それによみこんだデータ渡します。
- パラメータ:
- b - データを中に読み込む配列
- off -
b
の中にデータを配置する位置までの配列の起点からのオフセット
- len - 入力ストリームからオフセット
off
を起点として b の中に読み込むバイトの最大数
- 返り値:
- 実際に読み込んだバイト数。
len
バイトを読み込む前にストリームの最後に到達した場合には、読み込んだバイト数は len
より小さくなる。この呼び出しを行った時点ですでにストリームの最後に到達しているため、1 バイトも読み込まれなかった場合には、 -1 が返る。
- 例外: IOException
- I/O エラーが発生する場合
- オーバーライド:
- クラス read の FilterInputStream
- 参照:
- update
on
public void on(boolean on)
- ダイジェスト機能をオン、オフにします。デフォルトはオンです。オンの場合、 read に対する呼び出しは、メッセージダイジェストを更新します。ただし、オフの場合にはメッセージダイジェストは更新されません。
- パラメータ:
- on - ダイジェスト機能をオンにするには true、オフにするには false とする。
toString
public String toString()
- このダイジェスト入力ストリームとその関連のメッセージダイジェストオブジェクトの文字列表現を印字します。
- オーバーライド:
- クラス Object の toString
全パッケージ クラス階層 このパッケージ 前項目 次項目 インデックス