java.applet

java.awt

java.awt.color

java.awt.datatransfer

java.awt.dnd

java.awt.event

java.awt.font

java.awt.geom

java.awt.im

java.awt.im.spi

java.awt.image

java.awt.image.renderable

java.awt.print

java.beans

java.beans.beancontext

java.io

java.lang

java.lang.annotation

java.lang.instrument

java.lang.management

java.lang.ref

java.lang.reflect

java.math

java.net

java.nio

java.nio.channels

java.nio.channels.spi

java.nio.charset

java.nio.charset.spi

java.rmi

java.rmi.activation

java.rmi.dgc

java.rmi.registry

java.rmi.server

java.security

java.security.acl

java.security.cert

java.security.interfaces

java.security.spec

java.sql

java.text

java.util

java.util.concurrent

java.util.concurrent.atomic

java.util.concurrent.locks

java.util.jar

java.util.logging

java.util.prefs

java.util.regex

java.util.zip

javax.accessibility

javax.activity

javax.crypto

javax.crypto.interfaces

javax.crypto.spec

javax.imageio

javax.imageio.event

javax.imageio.metadata

javax.imageio.plugins.bmp

javax.imageio.plugins.jpeg

javax.imageio.spi

javax.imageio.stream

javax.management

javax.management.loading

javax.management.modelmbean

javax.management.monitor

javax.management.openmbean

javax.management.relation

javax.management.remote

javax.management.remote.rmi

javax.management.timer

javax.naming

javax.naming.directory

javax.naming.event

javax.naming.ldap

javax.naming.spi

javax.net

javax.net.ssl

javax.print

javax.print.attribute

javax.print.attribute.standard

javax.print.event

javax.rmi

javax.rmi.CORBA

javax.rmi.ssl

javax.security.auth

javax.security.auth.callback

javax.security.auth.kerberos

javax.security.auth.login

javax.security.auth.spi

javax.security.auth.x500

javax.security.cert

javax.security.sasl

javax.sound.midi

javax.sound.midi.spi

javax.sound.sampled

javax.sound.sampled.spi

javax.sql

javax.sql.rowset

javax.sql.rowset.serial

javax.sql.rowset.spi

javax.swing

javax.swing.border

javax.swing.colorchooser

javax.swing.event

javax.swing.filechooser

javax.swing.plaf

javax.swing.plaf.basic

javax.swing.plaf.metal

javax.swing.plaf.multi

javax.swing.plaf.synth

javax.swing.table

javax.swing.text

javax.swing.text

javax.swing.text.parser

javax.swing.text.rtf

javax.swing.tree

javax.swing.undo

javax.transaction

javax.transaction.xa

javax.xml

javax.xml.datatype

javax.xml.namespace

javax.xml.parsers

javax.xml.transform

javax.xml.transform.dom

javax.xml.transform.sax

javax.xml.transform.stream

javax.xml.validation

javax.xml.xpath

org.ietf.jgss

org.omg.CORBA

org.omg.CORBA_2_3

org.omg.CORBA_2_3.portable

org.omg.CORBA.DynAnyPackage

org.omg.CORBA.ORBPackage

org.omg.CORBA.portable

org.omg.CORBA.TypeCodePackage

org.omg.CosNaming

org.omg.CosNaming.NamingContextExtPackage

org.omg.CosNaming.NamingContextPackage

org.omg.Dynamic

org.omg.DynamicAny

org.omg.DynamicAny.DynAnyFactoryPackage

org.omg.DynamicAny.DynAnyPackage

org.omg.IOP

org.omg.IOP.CodecFactoryPackage

org.omg.IOP.CodecPackage

org.omg.Messaging

org.omg.PortableInterceptor

org.omg.PortableInterceptor.ORBInitInfoPackage

org.omg.PortableServer

org.omg.PortableServer.CurrentPackage

org.omg.PortableServer.POAManagerPackage

org.omg.PortableServer.POAPackage

org.omg.PortableServer.portable

org.omg.PortableServer.ServantLocatorPackage

org.omg.SendingContext

org.omg.stub.java.rmi

org.w3c.dom

org.w3c.dom.bootstrap

org.w3c.dom.events

org.w3c.dom.ls

org.xml.sax

org.xml.sax.ext

org.xml.sax.helpers

allclasses-frame

allclasses-noframe

constant-values

deprecated-list

help-doc

JavaTM 2 Platform
Standard Ed. 5.0

java.security
类 DigestInputStream

java.lang.Object
  继承者 java.io.InputStream
      继承者 java.io.FilterInputStream
          继承者 java.security.DigestInputStream
所有已实现的接口:
Closeable

public class DigestInputStream
extends FilterInputStream

使用通过流的位更新关联消息摘要的透明流。

要完成消息摘要计算,先要调用此摘要输入流的一个 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)
          读入字节数组并更新消息摘要(如果开启了摘要功能)。
 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
 

字段详细信息

digest

protected MessageDigest digest
与此流关联的消息摘要。

构造方法详细信息

DigestInputStream

public DigestInputStream(InputStream stream,
                         MessageDigest digest)
使用指定的输入流和消息摘要创建一个摘要输入流。

参数:
stream - 输入流。
digest - 要与此流关联的消息摘要。
方法详细信息

getMessageDigest

public MessageDigest getMessageDigest()
返回与此流关联的消息摘要。

返回:
与此流关联的消息摘要。
另请参见:
setMessageDigest(java.security.MessageDigest)

setMessageDigest

public void setMessageDigest(MessageDigest digest)
将指定的消息摘要与此流相关联。

参数:
digest - 要与此流关联的消息摘要。
另请参见:
getMessageDigest()

read

public int read()
         throws IOException
读取字节并更新消息摘要(如果开启了摘要功能)。即此方法从输入流读取字节,在实际读取字节前一直为阻塞状态。如果开启摘要功能(参见 on),则此方法将在与此流关联的消息摘要上调用 update,将读取的字节传递给该方法。

覆盖:
FilterInputStream 中的 read
返回:
读取的字节。
抛出:
IOException - 如果发生 I/O 错误。
另请参见:
MessageDigest.update(byte)

read

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)

on

public void on(boolean on)
开启或关闭摘要功能。默认为开启。开启时,调用 read 方法之一将导致消息摘要的更新。但是关闭时,不更新消息摘要。

参数:
on - 为 true 表示开启摘要功能,为 false 表示关闭。

toString

public String toString()
打印此摘要输入流及其关联的消息摘要对象的字符串表示形式。

覆盖:
Object 中的 toString
返回:
该对象的字符串表示形式。

JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策