Spec-Zone.ru › OpenJDK 25

Класс URLDecoder

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

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

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

  • Буквенно-цифровые символы «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.

Методы, объявленные в классе 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 — если реализация обнаруживает некорректные escape-последовательности

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 — если реализация обнаруживает некорректные escape-последовательности
С версии:
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. Указанная кодировка используется для определения символов, представленных любыми последовательными escape-последовательностями вида «%xy». Некорректные байты заменяются значением замены для заданной Charset, указанным в значении замены.

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

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

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, которая содержит более подробные описания для разработчиков, включая обзоры концепций, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2025, 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/net/URLDecoder.html

Spec-Zone.ru

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