java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
java.security.DigestOutputStream
- 所有已实现的接口:
-
Closeable
,Flushable
,AutoCloseable
一个透明流,使用通过流传递的位更新关联的消息摘要。
要完成消息摘要计算,请在调用此摘要输出流的一个write
方法后,调用关联消息摘要上的digest
方法之一。
可以打开或关闭此流(请参见on
)。当打开时,调用write
方法之一会导致消息摘要更新。但当关闭时,消息摘要不会被更新。默认情况下,流是打开的。
- 自版本:
- 1.2
- 参见:
-
Field Summary
Fields declared in class java.io.FilterOutputStream
out
-
Constructor Summary
ConstructorDescriptionDigestOutputStream
(OutputStream stream, MessageDigest digest) 使用指定的输出流和消息摘要创建一个摘要输出流。 -
Method Summary
Modifier and TypeMethodDescription返回与此流关联的消息摘要。void
on
(boolean on) 打开或关闭摘要功能。void
setMessageDigest
(MessageDigest digest) 将指定的消息摘要与此流关联。toString()
打印此摘要输出流及其关联的消息摘要对象的字符串表示形式。void
write
(byte[] b, int off, int len) 使用指定的子数组更新消息摘要(如果摘要功能打开),并无论如何将子数组写入输出流。void
write
(int b) 使用指定的字节更新消息摘要(如果摘要功能打开),并无论如何将字节写入输出流。Methods declared in class java.io.FilterOutputStream
close, flush, write
Methods declared in class java.io.OutputStream
nullOutputStream
-
Field Details
-
digest
与此流关联的消息摘要。
-
-
Constructor Details
-
DigestOutputStream
使用指定的输出流和消息摘要创建一个摘要输出流。- 参数:
-
stream
- 输出流。 -
digest
- 要与此流关联的消息摘要。
-
-
Method Details
-
getMessageDigest
返回与此流关联的消息摘要。- 返回:
- 与此流关联的消息摘要。
- 参见:
-
setMessageDigest
将指定的消息摘要与此流关联。- 参数:
-
digest
- 要与此流关联的消息摘要。 - 参见:
-
write
使用指定的字节更新消息摘要(如果摘要功能打开),并无论如何将字节写入输出流。也就是说,如果摘要功能打开(请参见on
),此方法会调用与此流关联的消息摘要的update
方法,传递字节b
。然后,此方法将字节写入输出流,阻塞直到字节实际写入为止。- 覆盖:
-
write
在类FilterOutputStream
中 - 参数:
-
b
- 用于更新和写入输出流的字节。 - 抛出:
-
IOException
- 如果发生I/O错误。 - 参见:
-
write
使用指定的子数组更新消息摘要(如果摘要功能打开),并无论如何将子数组写入输出流。也就是说,如果摘要功能打开(请参见on
),此方法会调用与此流关联的消息摘要的update
方法,传递子数组规格。然后,此方法将子数组字节写入输出流,阻塞直到字节实际写入为止。- 覆盖:
-
write
在类FilterOutputStream
中 - 参数:
-
b
- 包含要用于更新和写入输出流的子数组的数组。 -
off
- 要更新和写入的第一个字节在b
中的偏移量。 -
len
- 要从b
中的偏移量off
开始更新和写入的数据字节数。 - 抛出:
-
IOException
- 如果发生I/O错误。 - 参见:
-
on
public void on(boolean on) 打开或关闭摘要功能。默认为打开。当打开时,调用write
方法之一会导致消息摘要更新。但当关闭时,消息摘要不会被更新。- 参数:
-
on
-true
表示打开摘要功能,false
表示关闭。
-
toString
打印此摘要输出流及其关联的消息摘要对象的字符串表示形式。
-