Класс 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 |
Дайджест сообщений, связанный с этим потоком. |
Поля, объявленные в классе 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.io.OutputStream
nullOutputStream
Методы, объявленные в классе java.lang.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()
Выводит строковое представление этого потока дайджеста и связанного объекта дайджеста сообщений.
© 1993, 2020, 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/11/docs/api/java.base/java/security/DigestOutputStream.html