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

Функция utf8.decode

Функция utf8.decode декодирует список байтов, закодированных в формате UTF-8, и возвращает полученную строку. Первым параметром функция принимает список байтов (тип List<int>), вторым - необязательный именованный параметр allowMalformed, который указывает, следует ли заменять некорректные байтовые последовательности символом замены вместо выброса исключения.

Синтаксис

utf8.decode(bytes, allowMalformed: false)

Пример

Давайте закодируем строку в байты UTF-8, а затем декодируем её обратно:

import 'dart:convert'; void main() { List<int> bytes = utf8.encode('abcde'); String res = utf8.decode(bytes); print(res); }

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

"abcde"

Пример

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

import 'dart:convert'; void main() { List<int> bytes = [0xD0, 0xBF, 0xD1, 0x80, 0xD0, 0xB8, 0xD0, 0xB2, 0xD0, 0xB5, 0xD1, 0x82]; String res = utf8.decode(bytes); print(res); }

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

"привет"

Пример

Давайте попробуем декодировать некорректную последовательность байтов с параметром allowMalformed, установленным в true:

import 'dart:convert'; void main() { List<int> bytes = [0xFF, 0xFE, 0x41]; String res = utf8.decode(bytes, allowMalformed: true); print(res); }

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

"��A"

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

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