Метод encode
Метод encode класса URLEncoder преобразует
обычную строку в формат, пригодный для передачи
в URL или в теле HTTP-запроса. В первый параметр
мы передаем строку, которую нужно закодировать,
во второй параметр - название кодировки (например,
"UTF-8"). Метод возвращает новую строку,
в которой все небезопасные символы заменены на
последовательности вида %XX, а пробелы
заменены на знак +.
Синтаксис
URLEncoder.encode(str, charsetName)
Пример
Давайте закодируем строку с пробелом и специальными
символами в кодировке UTF-8:
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
public class Main
{
public static void main(String[] args) throws Exception
{
String str = "abcde 12345";
String res = URLEncoder.encode(str, StandardCharsets.UTF_8);
System.out.println(res);
}
}
Результат выполнения кода:
"abcde+12345"
Пример
Давайте закодируем строку, содержащую символы
& и =, которые в URL имеют
специальное значение:
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
public class Main
{
public static void main(String[] args) throws Exception
{
String str = "a=1&b=2";
String res = URLEncoder.encode(str, StandardCharsets.UTF_8);
System.out.println(res);
}
}
Результат выполнения кода:
"a%3D1%26b%3D2"
Пример
Давайте закодируем строку с символами кириллицы
в кодировке UTF-8:
import java.net.URLEncoder;
import java.nio.charset.StandardCharsets;
public class Main
{
public static void main(String[] args) throws Exception
{
String str = "abcde абв";
String res = URLEncoder.encode(str, StandardCharsets.UTF_8);
System.out.println(res);
}
}
Результат выполнения кода:
"abcde+%D0%B0%D0%B1%D0%B2"
Смотрите также
-
класс
URLEncoder,
который кодирует строки для URL -
метод
decode,
который выполняет обратное декодирование -
класс
URL,
который представляет адрес ресурса в сети -
класс
URI,
который представляет идентификатор ресурса