Класс Base64.Decoder
- Внешний класс:
Base64
public static class Base64.Decoder extends Object
Символ дополнения Base64 '=' принимается и интерпретируется как конец закодированных байтовых данных, но не является обязательным. Поэтому, если последняя группа закодированных байтовых данных содержит только два или три символа Base64 (без соответствующих символов дополнения), она декодируется так, как если бы за ней следовали символы дополнения. Если в последней группе присутствует символ дополнения, должно быть указано правильное количество символов дополнения, иначе при декодировании будет выброшено исключение IllegalArgumentException ( IOException при чтении из потока Base64).
Экземпляры класса Base64.Decoder безопасно использовать в нескольких параллельных потоках.
Если не указано иное, передача аргумента null методу этого класса приведёт к выбрасыванию исключения NullPointerException.
Если невозможно выделить память для декодированных выходных байтов требуемого размера, методы декодирования этого класса выбрасывают исключение OutOfMemoryError.
- Начиная с:
- 1.8
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
byte[] |
decode |
Декодирует все байты входного массива байтов с использованием схемы кодирования Base64 и записывает результат в новый массив выходных байтов. |
int |
decode |
Декодирует все байты входного массива байтов с использованием схемы кодирования Base64 и записывает результат в указанный массив выходных байтов, начиная со смещения 0. |
byte[] |
decode |
Декодирует строку в кодировке Base64 в новый массив байтов с использованием схемы кодирования Base64. |
ByteBuffer |
decode |
Декодирует все байты входного буфера байтов с использованием схемы кодирования Base64 и записывает результат в новый ByteBuffer. |
InputStream |
wrap |
Возвращает входной поток для декодирования потока байтов, закодированного в Base64. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли другой объект этому объекту. |
protected void |
finalize() |
Устарело, планируется удаление: этот элемент API может быть удалён в будущей версии. Финализация устарела и может быть удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Приостанавливает выполнение текущего потока до его пробуждения, обычно в результате уведомления или прерывания. |
final void |
wait |
Приостанавливает выполнение текущего потока до его пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Приостанавливает выполнение текущего потока до его пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
Подробное описание методов
decode
public byte[] decode(byte[] src)
Base64 и записывает результат в новый массив выходных байтов. Длина возвращаемого массива байтов равна длине результирующих байтов.- Параметры:
-
src— массив байтов для декодирования - Возвращает:
- Новый массив байтов, содержащий декодированные байты.
- Выбрасывает:
-
IllegalArgumentException— еслиsrcне соответствует допустимой схеме Base64
decode
public byte[] decode(String src)
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, 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.