Класс 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 методов приводит к обновлению дайджеста сообщения. При выключенном режиме дайджест сообщения не обновляется. По умолчанию поток включен.
- См. также:
-
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.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.