Spec-Zone.ru › OpenJDK 21

Класс Base64.Decoder

java.lang.Object
java.util.Base64.Decoder
Вложенный класс:
Base64
public static class Base64.Decoder extends Object
Этот класс реализует декодер для декодирования данных байтов с использованием схемы кодирования Base64, как указано в RFC 4648 и RFC 2045.

Символ заполнения Base64 '=' принимается и интерпретируется как конец кодированных данных байтов, но не является обязательным. Таким образом, если конечный блок кодированных данных байтов содержит только два или три символа Base64 (без соответствующих символов заполнения), они декодируются так, как если бы за ними следовали символы заполнения. Если в конечном блоке присутствует символ заполнения, необходимо присутствие правильного количества символов заполнения, в противном случае IllegalArgumentException (IOException при чтении из потока Base64) генерируется во время декодирования.

Экземпляры класса Base64.Decoder безопасны для использования несколькими потоками одновременно.

Если не указано иное, передача null аргумента методу этого класса вызовет исключение NullPointerException.

Если декодированный выходной массив байтов необходимого размера не может быть выделен, методы декодирования этого класса вызовут исключение OutOfMemoryError.

С:
1.8
См. также:
  • Base64.Encoder

Краткое описание методов

Модификатор и тип Метод Описание
byte[] decode(byte[] src)
Декодирует все байты из входного массива байтов, используя схему кодирования Base64, записывая результаты в новый выделенный массив байтов.
int decode(byte[] src, byte[] dst)
Декодирует все байты из входного массива байтов, используя схему кодирования Base64, записывая результаты в заданный массив байтов, начиная с смещения 0.
byte[] decode(String src)
Декодирует строку Base64 в новый выделенный массив байтов, используя схему кодирования Base64.
ByteBuffer decode(ByteBuffer buffer)
Декодирует все байты из входного буфера байтов, используя схему кодирования Base64, записывая результаты в новый выделенный буфер ByteBuffer.
InputStream wrap(InputStream is)
Возвращает поток ввода для декодирования потока байтов, закодированных в Base64.

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

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

Подробное описание методов

decode

public byte[] decode(byte[] src)
Декодирует все байты из входного массива байтов, используя схему кодирования Base64, записывая результаты в новый выделенный массив байтов. Возвращаемый массив байтов имеет длину, соответствующую результатам.
Параметры:
src - массив байтов для декодирования
Возвращает:
Новый выделенный массив байтов, содержащий декодированные байты.
Исключение:
IllegalArgumentException - если src не соответствует схеме Base64

decode

public byte[] decode(String src)
Декодирует строку Base64 в новый выделенный массив байтов, используя схему кодирования Base64.

Вызов этого метода эквивалентен вызову decode(src.getBytes(StandardCharsets.ISO_8859_1))

Параметры:
src - строка для декодирования
Возвращает:
Новый выделенный массив байтов, содержащий декодированные байты.
Исключение:
IllegalArgumentException - если src не соответствует схеме Base64

decode

public int decode(byte[] src, byte[] dst)
Декодирует все байты из входного массива байтов, используя схему кодирования Base64, записывая результаты в заданный массив байтов, начиная с смещения 0.

Ответственность вызывающего метода состоит в том, чтобы убедиться, что выходной массив байтов dst имеет достаточно места для декодирования всех байтов из входного массива байтов. Если выходной массив байтов недостаточно велик, байты в него не будут записаны.

Если входной массив байтов не соответствует схеме кодирования Base64, то некоторые байты могут быть записаны в выходной массив байтов до вызова исключения IllegalargumentException.

Параметры:
src - массив байтов для декодирования
dst - выходной массив байтов
Возвращает:
Количество байтов, записанных в выходной массив байтов
Исключение:
IllegalArgumentException - если src не соответствует схеме Base64 или dst не имеет достаточно места для декодирования всех входных байтов.

decode

public ByteBuffer decode(ByteBuffer buffer)
Декодирует все байты из входного буфера байтов, используя схему кодирования Base64, записывая результаты в новый выделенный буфер ByteBuffer.

По завершении, позиция исходного буфера будет обновлена до его предела; его предел не будет изменён. Позиция возвращаемого выходного буфера будет равна нулю, а его предел — количеству полученных декодированных байтов.

IllegalArgumentException генерируется, если входной буфер не соответствует схеме кодирования Base64. В этом случае позиция входного буфера не будет сдвинута.

Параметры:
buffer - буфер ByteBuffer для декодирования
Возвращает:
Новый выделенный буфер байтов, содержащий декодированные байты
Исключение:
IllegalArgumentException - если buffer не соответствует схеме Base64

wrap

public InputStream wrap(InputStream is)
Возвращает поток ввода для декодирования потока байтов, закодированных в Base64.

Методы read возвращаемого InputStream потока вызовут IOException при чтении байтов, которые не могут быть декодированы.

Закрытие возвращаемого потока ввода закроет базовый поток ввода.

Параметры:
is - поток ввода
Возвращает:
поток ввода для декодирования указанного потока байтов, закодированных в Base64

© 1993, 2023, 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/21/docs/api/java.base/java/util/Base64.Decoder.html

Spec-Zone.ru

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