java.lang.Object java.io.OutputStream java.io.FilterOutputStream java.security.DigestOutputStream
public class DigestOutputStream
使用通过流的位更新关联消息摘要的透明流。
要完成消息摘要计算,先要调用此摘要输出流的一个 write
方法,之后在关联的消息摘要上调用 digest
方法之一。
开启或关闭此流都是可能的(参见 on
)。开启时,调用 write
方法之一将导致消息摘要的更新。但是关闭时,不更新消息摘要。流在默认情况下是开启的。
MessageDigest
,
DigestInputStream
字段摘要 | |
---|---|
protected MessageDigest |
digest 与此流关联的消息摘要。 |
从类 java.io.FilterOutputStream 继承的字段 |
---|
out |
构造方法摘要 | |
---|---|
DigestOutputStream(OutputStream stream, MessageDigest digest) 使用指定的输出流和消息摘要创建一个摘要输出流。 |
方法摘要 | |
---|---|
MessageDigest |
getMessageDigest() 返回与此流关联的消息摘要。 |
void |
on(boolean on) 开启或关闭摘要功能。 |
void |
setMessageDigest(MessageDigest digest) 将指定的消息摘要与此流相关联。 |
String |
toString() 打印此摘要输出流及其关联的消息摘要对象的字符串表示形式。 |
void |
write(byte[] b, int off, int len) 使用指定的子数组更新消息摘要(如果开启了摘要功能),并将子数组写入输出流(不管是否开启了摘要功能)。 |
void |
write(int b) 使用指定的字节更新消息摘要(如果开启了摘要功能),并将字节写入输出流(不管是否开启了摘要功能)。 |
从类 java.io.FilterOutputStream 继承的方法 |
---|
close, flush, write |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
字段详细信息 |
---|
protected MessageDigest digest
构造方法详细信息 |
---|
public DigestOutputStream(OutputStream stream, MessageDigest digest)
stream
- 输出流。
digest
- 要与此流关联的消息摘要。
方法详细信息 |
---|
public MessageDigest getMessageDigest()
setMessageDigest(java.security.MessageDigest)
public void setMessageDigest(MessageDigest digest)
digest
- 要与此流关联的消息摘要。
getMessageDigest()
public void write(int b) throws IOException
on
),则此方法将在与此流关联的消息摘要上调用
update
,将字节
b
传递给该方法。然后,此方法将字节写入输出流,在实际写入字节前一直为阻塞状态。
FilterOutputStream
中的
write
b
- 要用于更新和写入输出流的字节。
IOException
- 如果发生 I/O 错误。
MessageDigest.update(byte)
public void write(byte[] b, int off, int len) throws IOException
on
),则此方法将在与此流关联的消息摘要上调用
update
,将子数组规范传递给该方法。然后,此方法将子数组字节写入输出流,在实际写入字节前一直为阻塞状态。
FilterOutputStream
中的
write
b
- 要用于更新和写入输出流的包含子数组的数组。
off
- 要更新和写入的第一个字节在
b
中的偏移量。
len
- 要根据
b
更新和写入的数据的字节数,从偏移量
off
开始。
IOException
- 如果发生 I/O 错误。
MessageDigest.update(byte[], int, int)
public void on(boolean on)
write
方法之一将导致消息摘要的更新。但是关闭时,不更新消息摘要。
on
- 为 true 表示开启摘要功能,为 false 表示关闭。
public String toString()