Spec-Zone.ru › OpenJDK 27

Класс 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.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли другой объект этому объекту.
protected void finalize()
Устарело, планируется удаление: этот элемент API может быть удалён в будущей версии.
Финализация устарела и может быть удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Приостанавливает выполнение текущего потока до его пробуждения, обычно в результате уведомления или прерывания.
final void wait(long timeoutMillis)
Приостанавливает выполнение текущего потока до его пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Приостанавливает выполнение текущего потока до его пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени.

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

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

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, 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.

Spec-Zone.ru

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