Spec-Zone.ru › OpenJDK 17

Класс 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, 2021, 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/17/docs/api/java.base/java/util/Base64.Decoder.html

Spec-Zone.ru

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