|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
java.lang.Object java.io.InputStream java.io.FilterInputStream java.security.DigestInputStream
public class DigestInputStream
使用通過串流的位更新關聯訊息摘要的透明串流。
要完成訊息摘要計算,先要調用此摘要輸入串流的一個 read
方法,之後在關聯的訊息摘要上調用一個 digest
方法。
開啟或關閉此串流都是可能的(請參見 on
)。開啟時,調用 read
方法之一將導致訊息摘要的更新。但是關閉時,不更新訊息摘要。串流在預設情況下是開啟的。
注意,摘要物件只能計算一個摘要(參見 MessageDigest
),因此,為了計算中間摘要,調用者應該保留到摘要物件的句柄並為要計算的每一個摘要複製該物件,不改動原始摘要。
MessageDigest
,
DigestOutputStream
欄位摘要 | |
---|---|
protected MessageDigest |
digest
與此串流關聯的訊息摘要。 |
從類別 java.io.FilterInputStream 繼承的欄位 |
---|
in |
建構子摘要 | |
---|---|
DigestInputStream(InputStream stream,
MessageDigest digest)
使用指定的輸入串流和訊息摘要創建一個摘要輸入串流。 |
方法摘要 | |
---|---|
MessageDigest |
getMessageDigest()
返回與此串流關聯的訊息摘要。 |
void |
on(boolean on)
開啟或關閉摘要功能。 |
int |
read()
讀取位元組並更新訊息摘要(如果開啟了摘要功能)。 |
int |
read(byte[] b,
int off,
int len)
讀入 byte 陣列並更新訊息摘要(如果開啟了摘要功能)。 |
void |
setMessageDigest(MessageDigest digest)
將指定的訊息摘要與此串流相關聯。 |
String |
toString()
列印此摘要輸入串流及其關聯的訊息摘要物件的字元串表示形式。 |
從類別 java.io.FilterInputStream 繼承的方法 |
---|
available, close, mark, markSupported, read, reset, skip |
從類別 java.lang.Object 繼承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
欄位詳細資訊 |
---|
protected MessageDigest digest
建構子詳細資訊 |
---|
public DigestInputStream(InputStream stream, MessageDigest digest)
stream
- 輸入串流。digest
- 要與此串流關聯的訊息摘要。方法詳細資訊 |
---|
public MessageDigest getMessageDigest()
setMessageDigest(java.security.MessageDigest)
public void setMessageDigest(MessageDigest digest)
digest
- 要與此串流關聯的訊息摘要。getMessageDigest()
public int read() throws IOException
on
),則此方法將在與此串流關聯的訊息摘要上調用 update
,將讀取的位元組傳遞給該方法。
FilterInputStream
中的 read
IOException
- 如果發生 I/O 錯誤。MessageDigest.update(byte)
public int read(byte[] b, int off, int len) throws IOException
len
個位元組讀入陣列 b
,從偏移量 off
開始。此方法在實際讀取資料前一直阻塞。如果開啟摘要功能(參見 on
),則此方法將在與此串流關聯的訊息摘要上調用 update
,將資料傳遞給該方法。
FilterInputStream
中的 read
b
- 從中讀取資料的陣列。off
- b
中的偏移量,應將資料從此處開始放入陣列。len
- 從輸入串流讀入 b 的最大位元組數,從偏移量 off
開始。
len
個位元組前到達了串流的末尾,則其小於 len
。如果因為進行調用時已經到達了串流的末尾而沒有讀取任何位元組,則返回 -1。
IOException
- 如果發生 I/O 錯誤。MessageDigest.update(byte[], int, int)
public void on(boolean on)
read
方法之一將導致訊息摘要的更新。但是關閉時,不更新訊息摘要。
on
- 為 true 表示開啟摘要功能,為 false 表示關閉。public String toString()
Object
中的 toString
|
JavaTM 2 Platform Standard Ed. 6 |
|||||||||
上一個類別 下一個類別 | 框架 無框架 | |||||||||
摘要: 巢狀 | 欄位 | 建構子 | 方法 | 詳細資訊: 欄位 | 建構子 | 方法 |
版權所有 2008 Sun Microsystems, Inc. 保留所有權利。請遵守GNU General Public License, version 2 only。