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

Класс Utf8Decoder

Класс Utf8Decoder декодирует последовательность байтов, закодированных в формате UTF-8, и возвращает строку. Он используется совместно с классом Utf8Codec и доступен через константу utf8. Первым параметром можно передать флаг allowMalformed, который разрешает декодирование некорректных последовательностей байтов без выброса исключения.

Синтаксис

Utf8Decoder([bool allowMalformed = false])

Пример

Давайте декодируем последовательность байтов в строку с помощью метода convert:

void main() { List<int> bytes = [97, 98, 99, 100, 101]; Utf8Decoder decoder = Utf8Decoder(); String res = decoder.convert(bytes); print(res); }

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

"abcde"

Пример

Давайте декодируем байты, содержащие русские символы в UTF-8:

void main() { List<int> bytes = [208, 191, 209, 128, 208, 184]; Utf8Decoder decoder = Utf8Decoder(); String res = decoder.convert(bytes); print(res); }

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

"при"

Пример

Давайте получим декодер через константу utf8 и декодируем массив байтов:

import 'dart:convert'; void main() { List<int> bytes = [49, 50, 51, 52, 53]; String res = utf8.decode(bytes); print(res); }

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

"12345"

Пример

Давайте передадим флаг allowMalformed, чтобы декодировать некорректные байты без выброса исключения:

void main() { List<int> bytes = [97, 98, 255, 100, 101]; Utf8Decoder decoder = Utf8Decoder(allowMalformed: true); String res = decoder.convert(bytes); print(res); }

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

"ab�de"

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

  • класс Utf8Codec,
    который кодирует и декодирует UTF-8
  • метод convert,
    который декодирует байты в строку
  • класс Utf8Encoder,
    который кодирует строку в байты UTF-8
  • функция utf8.decode,
    которая декодирует байты через константу utf8
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить