Spec-Zone.ru › OpenJDK 24

Класс 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
Исключения:
IllegalArgumentException - если реализация столкнулась с некорректными последовательностями экранирования

decode

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

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

Параметры:
s - строка String для декодирования
enc - Имя поддерживаемой кодировки символов.
Возвращает:
новую декодированную строку String
Исключения:
UnsupportedEncodingException - Если требуется обратиться к кодировке символов, но заданная кодировка не поддерживается
IllegalArgumentException - если реализация столкнулась с некорректными последовательностями экранирования
С момента:
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". Ошибочные байты заменяются значением подстановки заданной кодировки replacement value.

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

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

© 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/net/URLDecoder.html

Spec-Zone.ru

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