所有类
java.security
类 DigestOutputStream
java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
java.security.DigestOutputStream
-
所有已实现的接口:
-
Closeable, Flushable
-
public class DigestOutputStream
- extends FilterOutputStream
使用通过流的位更新关联消息摘要的透明流。
要完成消息摘要计算,先要调用此摘要输出流的一个 write
方法,之后在关联的消息摘要上调用 digest
方法之一。
开启或关闭此流都是可能的(参见 on
)。开启时,调用 write
方法之一将导致消息摘要的更新。但是关闭时,不更新消息摘要。流在默认情况下是开启的。
-
另请参见:
-
MessageDigest
, DigestInputStream
digest
protected MessageDigest digest
-
与此流关联的消息摘要。
DigestOutputStream
public DigestOutputStream(OutputStream stream,
MessageDigest digest)
-
使用指定的输出流和消息摘要创建一个摘要输出流。
-
参数:
-
stream
- 输出流。
-
digest
- 要与此流关联的消息摘要。
getMessageDigest
public MessageDigest getMessageDigest()
-
返回与此流关联的消息摘要。
-
-
返回:
-
与此流关联的消息摘要。
-
另请参见:
-
setMessageDigest(java.security.MessageDigest)
setMessageDigest
public void setMessageDigest(MessageDigest digest)
-
将指定的消息摘要与此流相关联。
-
-
参数:
-
digest
- 要与此流关联的消息摘要。
-
另请参见:
-
getMessageDigest()
write
public void write(int b)
throws IOException
-
使用指定的字节更新消息摘要(如果开启了摘要功能),并将字节写入输出流(不管是否开启了摘要功能)。即如果开启摘要功能(参见
on
),则此方法将在与此流关联的消息摘要上调用 update
,将字节 b
传递给该方法。然后,此方法将字节写入输出流,在实际写入字节前一直为阻塞状态。
-
-
覆盖:
-
类
FilterOutputStream
中的 write
-
-
参数:
-
b
- 要用于更新和写入输出流的字节。
-
抛出:
-
IOException
- 如果发生 I/O 错误。
-
另请参见:
-
MessageDigest.update(byte)
write
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)
on
public void on(boolean on)
-
开启或关闭摘要功能。默认为开启。开启时,调用
write
方法之一将导致消息摘要的更新。但是关闭时,不更新消息摘要。
-
-
参数:
-
on
- 为 true 表示开启摘要功能,为 false 表示关闭。
toString
public String toString()
-
打印此摘要输出流及其关联的消息摘要对象的字符串表示形式。
-
-
覆盖:
-
类
Object
中的 toString
-
-
返回:
-
该对象的字符串表示形式。
所有类