Класс Latin1Codec
Класс Latin1Codec из библиотеки dart:convert
предоставляет методы для кодирования строк в последовательность
байтов и декодирования байтов обратно в строку с использованием
кодировки Latin-1 (ISO-8859-1). Кодировка Latin-1 поддерживает
символы с кодовыми точками от 0 до 255. Каждому символу
соответствует ровно один байт. Класс реализует интерфейс
Codec и предоставляет свойства encoder и
decoder, а также методы encode и decode.
Для получения экземпляра кодека используется константа
latin1.
Синтаксис
import 'dart:convert';
latin1.encode(input)
latin1.decode(bytes)
Пример
Давайте закодируем строку в последовательность байтов с помощью кодека Latin-1:
import 'dart:convert';
void main()
{
String str = 'abcde';
List<int> bytes = latin1.encode(str);
print(bytes);
}
Результат выполнения кода:
[97, 98, 99, 100, 101]
Пример
Давайте декодируем последовательность байтов обратно в строку с помощью кодека Latin-1:
import 'dart:convert';
void main()
{
List<int> bytes = [97, 98, 99, 100, 101];
String str = latin1.decode(bytes);
print(str);
}
Результат выполнения кода:
"abcde"
Пример
Давайте закодируем строку с символами, входящими в диапазон Latin-1, и выведем полученные байты:
import 'dart:convert';
void main()
{
String str = '12345';
List<int> bytes = latin1.encode(str);
print(bytes);
}
Результат выполнения кода:
[49, 50, 51, 52, 53]
Пример
Давайте воспользуемся свойствами encoder
и decoder для выполнения тех же операций:
import 'dart:convert';
void main()
{
String str = 'abcde';
List<int> bytes = latin1.encoder.convert(str);
String decoded = latin1.decoder.convert(bytes);
print(bytes);
print(decoded);
}
Результат выполнения кода:
[97, 98, 99, 100, 101]
"abcde"
Смотрите также
-
класс
JsonCodec,
который кодирует объекты в JSON -
класс
Utf8Codec,
который кодирует строки в UTF-8 -
класс
AsciiCodec,
который кодирует строки в ASCII -
константа
latin1,
которая предоставляет экземпляр Latin1Codec