Метод forName
Метод forName класса Charset возвращает объект типа Charset, который представляет собой набор символов (кодировку) с указанным именем. В первый параметр мы передаем строку с названием кодировки, например, "UTF-8" или "ISO-8859-1". Если указанная кодировка не поддерживается в текущей виртуальной машине Java, метод выбрасывает исключение UnsupportedCharsetException или IllegalCharsetNameException.
Синтаксис
Charset.forName(charsetName)
Пример
Давайте получим объект кодировки UTF-8 и выведем её каноническое имя:
import java.nio.charset.Charset;
public class Main
{
public static void main(String[] args)
{
Charset charset = Charset.forName("UTF-8");
System.out.println(charset.name());
}
}
Результат выполнения кода:
"UTF-8"
Пример
Давайте попробуем получить кодировку с несуществующим именем и обработаем исключение:
import java.nio.charset.Charset;
import java.nio.charset.UnsupportedCharsetException;
public class Main
{
public static void main(String[] args)
{
try
{
Charset charset = Charset.forName("NonExistentCharset");
System.out.println(charset.name());
}
catch (UnsupportedCharsetException e)
{
System.out.println("Charset is not supported");
}
}
}
Результат выполнения кода:
"Charset is not supported"
Смотрите также
-
класс
Charset,
который представляет кодировку символов -
класс
StandardCharsets,
который содержит стандартные кодировки -
атрибут
UTF_8,
который представляет кодировку UTF-8 -
класс
InputStreamReader,
который читает поток с указанной кодировкой