Поле UTF_8
Поле UTF_8 класса StandardCharsets хранит
ссылку на объект Charset, соответствующий
кодировке UTF-8. Эту константу удобно использовать
в методах чтения и записи, которые принимают
параметр типа Charset, чтобы явно указать
кодировку и избежать зависимости от платформы.
Поле является публичным, статическим и неизменяемым.
Синтаксис
StandardCharsets.UTF_8
Пример
Давайте получим объект кодировки UTF-8 и выведем его каноническое имя:
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
public class Main
{
public static void main(String[] args)
{
Charset charset = StandardCharsets.UTF_8;
System.out.println(charset.name());
System.out.println(charset.displayName());
}
}
Результат выполнения кода:
"UTF-8"
"UTF-8"
Пример
Давайте запишем строку в файл с явным указанием кодировки UTF-8:
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
public class Main
{
public static void main(String[] args) throws IOException
{
Path path = Path.of("test.txt");
Files.writeString(path, "abcde", StandardCharsets.UTF_8);
String res = Files.readString(path, StandardCharsets.UTF_8);
System.out.println(res);
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте сравним константу UTF_8 с объектом,
полученным через Charset.forName:
import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
public class Main
{
public static void main(String[] args)
{
Charset charset = Charset.forName("UTF-8");
boolean res = charset.equals(StandardCharsets.UTF_8);
System.out.println(res);
}
}
Результат выполнения кода:
true
Смотрите также
-
класс
StandardCharsets,
который содержит стандартные кодировки -
класс
Charset,
который представляет кодировку символов -
метод
forName,
который возвращает объект кодировки по имени -
поле
ISO_8859_1,
которое представляет кодировку ISO 8859-1