РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
869 of 1163 menu

Класс Charset

Класс Charset из пакета java.nio.charset представляет собой именованную кодировку символов. Он используется для преобразования между последовательностями байтов и символами Unicode. В первом параметре методов этого класса обычно передается имя кодировки или объект Charset, во втором - данные для преобразования. Класс является абстрактным, поэтому экземпляры создаются через статические методы, такие как forName.

Синтаксис

Charset.forName(String charsetName) charset.name() charset.displayName() charset.canEncode()

Пример

Давайте получим объект кодировки 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()); System.out.println(charset.displayName()); } }

Результат выполнения кода:

"UTF-8" "UTF-8"

Пример

Давайте проверим, поддерживает ли кодировка US-ASCII кодирование символов, и получим кодировку по умолчанию:

import java.nio.charset.Charset; public class Main { public static void main(String[] args) { Charset ascii = Charset.forName("US-ASCII"); System.out.println(ascii.canEncode()); Charset defaultCharset = Charset.defaultCharset(); System.out.println(defaultCharset.name()); } }

Результат выполнения кода:

true "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; String str = "abcde"; byte[] bytes = str.getBytes(charset); String res = new String(bytes, charset); System.out.println(res); } }

Результат выполнения кода:

"abcde"

Смотрите также

  • метод forName,
    который возвращает объект Charset по имени
  • класс StandardCharsets,
    который содержит стандартные кодировки
  • класс InputStreamReader,
    который читает байты и декодирует их в символы
  • класс OutputStreamWriter,
    который кодирует символы в байты при записи
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить