Spec-Zone.ru › OpenJDK 21

Класс URLDecoder

java.lang.Object
java.net.URLDecoder
public class URLDecoder extends Object
Утилитарный класс для декодирования HTML-форм. Этот класс содержит статические методы для декодирования строки из формата application/x-www-form-urlencoded MIME.

Процесс преобразования является обратным процессу, используемому классом URLEncoder. Предполагается, что все символы в закодированной строке являются одним из следующих: "a" по "z", "A" по "Z", "0" по "9", и "-", "_", ".", и "*". Символ "%" разрешен, но интерпретируется как начало специальной эскейп-последовательности.

Применяются следующие правила преобразования:

  • Алфавитно-цифровые символы "a" по "z", "A" по "Z" и "0" по "9" остаются без изменений.
  • Специальные символы ".", "-", "*" и "_" остаются без изменений.
  • Плюс-символ "+" преобразуется в пробел " " .
  • Последовательность вида "%xy" будет интерпретироваться как представление байта, где xy — двухзначное шестнадцатеричное представление 8 бит. Затем все подстроки, содержащие одну или более из этих последовательностей байтов, будут заменены символом(ами), кодирование которого привело бы к этим последовательным байтам. Схема кодирования для декодирования этих символов может быть указана; в противном случае будет использоваться кодировка по умолчанию.

Существует два возможных способа, которыми этот декодер может обрабатывать некорректные строки. Он может либо оставить некорректные символы без изменений, либо бросить исключение IllegalArgumentException. Какой подход использует декодер, остается на усмотрение реализации.

С момента:
1.2
См. также:
  • Charset.defaultCharset()

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

Модификатор и тип Метод Описание
static String decode(String s)
Устарело.
Результирующая строка может отличаться в зависимости от кодировки по умолчанию.
static String decode(String s, String enc)
Декодирует строку application/x-www-form-urlencoded с использованием определённой схемы кодирования.
static String decode(String s, Charset charset)
Декодирует строку application/x-www-form-urlencoded с использованием определённого Charset.

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

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

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

decode

@Deprecated public static String decode(String s)
Устарело.
Результирующая строка может отличаться в зависимости от кодировки по умолчанию. Вместо этого используйте метод decode(String,String) для указания кодировки.
Декодирует строку x-www-form-urlencoded. Кодировка по умолчанию используется для определения символов, представленных любыми последовательными последовательностями вида "%xy".
Параметры:
s - строка String для декодирования
Возвращает:
новая декодированная строка String

decode

public static String decode(String s, String enc) throws UnsupportedEncodingException
Декодирует строку application/x-www-form-urlencoded с использованием определенной схемы кодирования.

Этот метод ведет себя так же, как decode(java.lang.String,java.nio.charset.Charset), за исключением того, что он будет искать кодировку с помощью данного имени кодировки.

Примечание реализации:
Эта реализация будет выбрасывать IllegalArgumentException при обнаружении некорректных строк.
Параметры:
s - строка String для декодирования
enc - Имя поддерживаемой кодировки символов.
Возвращает:
новая декодированная строка String
Исключения:
UnsupportedEncodingException - Если кодировка символов должна быть проконсультирована, но указанная кодировка символов не поддерживается
С момента:
1.4
См. также:
  • URLEncoder.encode(java.lang.String, java.lang.String)

decode

public static String decode(String s, Charset charset)
Декодирует строку application/x-www-form-urlencoded с использованием определённого Charset. Указанная кодировка используется для определения символов, представленных любыми последовательными последовательностями вида "%xy".

Примечание: Рекомендация Консорциума Всемирной паутины указывает, что следует использовать UTF-8. Использование другой кодировки может привести к несовместимости.

Примечание реализации:
Эта реализация будет выбрасывать IllegalArgumentException при обнаружении некорректных строк.
Параметры:
s - строка String для декодирования
charset - заданная кодировка
Возвращает:
новая декодированная строка String
Исключения:
NullPointerException - если s или charset является null
IllegalArgumentException - если реализация сталкивается с некорректными символами
С момента:
10
Внешние спецификации
  • Спецификация HTML 4.01
См. также:
  • URLEncoder.encode(java.lang.String, Charset)

© 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/net/URLDecoder.html

Spec-Zone.ru

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