Spec-Zone.ru › OpenJDK 25

Класс DigestOutputStream

java.lang.Object
java.io.OutputStream
java.io.FilterOutputStream
java.security.DigestOutputStream
Все реализуемые интерфейсы:
Closeable, Flushable, AutoCloseable
public class DigestOutputStream extends FilterOutputStream
Прозрачный поток, который обновляет связанный дайджест сообщения, используя биты, проходящие через поток.

Чтобы завершить вычисление дайджеста сообщения, вызовите один из методов digest для связанного дайджеста сообщения после вызова одного из методов write этого потока вывода дайджеста.

Этот поток можно включать и выключать (см. on). Когда поток включен, вызов одного из методов write приводит к обновлению дайджеста сообщения. Когда поток выключен, дайджест сообщения не обновляется. По умолчанию поток включен.

Начиная с:
1.2
См. также:
  • MessageDigest
  • DigestInputStream

Краткое описание полей

Модификатор и тип Поле Описание
protected MessageDigest digest
Дайджест сообщения, связанный с этим потоком.

Поля, объявленные в классе 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)
Обновляет дайджест сообщения (если функция вычисления дайджеста включена) с использованием указанного байта и в любом случае записывает байт в поток вывода.

Методы, объявленные в классе FilterOutputStream

close, flush, write

Методы, объявленные в классе OutputStream

nullOutputStream

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

Подробное описание полей

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. Затем этот метод записывает байт в поток вывода и блокируется до фактической записи байта.
Переопределяет:
write в классе FilterOutputStream
Параметры:
b — байт, используемый для обновления дайджеста и записи в поток вывода.
Вызывает исключение:
IOException — если возникает ошибка ввода-вывода.
См. также:
  • MessageDigest.update(byte)

write

public void write(byte[] b, int off, int len) throws IOException
Обновляет дайджест сообщения (если функция вычисления дайджеста включена) с использованием указанного подмассива и в любом случае записывает подмассив в поток вывода. То есть, если функция вычисления дайджеста включена (см. on), этот метод вызывает update для дайджеста сообщения, связанного с этим потоком, передавая ему описание подмассива. Затем этот метод записывает байты подмассива в поток вывода и блокируется до фактической записи байтов.
Переопределяет:
write в классе FilterOutputStream
Параметры:
b — массив, содержащий подмассив, используемый для обновления дайджеста и записи в поток вывода.
off — смещение в b первого байта, который необходимо обработать и записать.
len — количество байтов данных, которые необходимо обработать и записать из b, начиная со смещения off.
Вызывает исключение:
IOException — если возникает ошибка ввода-вывода.
См. также:
  • MessageDigest.update(byte[], int, int)

on

public void on(boolean on)
Включает или выключает функцию вычисления дайджеста. По умолчанию она включена. Когда функция включена, вызов одного из методов write приводит к обновлению дайджеста сообщения. Когда функция выключена, дайджест сообщения не обновляется.
Параметры:
on — true, чтобы включить функцию вычисления дайджеста, false, чтобы выключить ее.

toString

public String toString()
Выводит строковое представление этого потока вывода дайджеста и связанного с ним объекта дайджеста сообщения.
Переопределяет:
toString в классе Object
Возвращает:
строковое представление объекта

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/security/DigestOutputStream.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API