此类将 Latin-1 字节(无符号 8 位整数的列表)转换为字符串。
示例
final latin1Decoder = latin1.decoder;
const encodedBytes = [224, 225, 226, 227, 228, 229];
final decoded = latin1Decoder.convert(encodedBytes);
print(decoded); // àáâãäå
// Hexadecimal values as source
const hexBytes = [0xe0, 0xe1, 0xe2, 0xe3, 0xe4, 0xe5];
final decodedHexBytes = latin1Decoder.convert(hexBytes);
print(decodedHexBytes); // àáâãäå
如果编码输入包含不在 0 .. 255 范围内的值并且 allowInvalid
为 false(默认值),则会抛出 FormatException。
如果 allowInvalid
为 true,则无效的字节转换为 Unicode 替换字符 U+FFFD (�)。
将 allowInvalid
设置为 true 的示例
const latin1Decoder = Latin1Decoder(allowInvalid: true);
const encodedBytes = [300];
final decoded = latin1Decoder.convert(encodedBytes);
print(decoded); // �
构造函数
- Latin1Decoder({bool allowInvalid = false})
- 实例化一个新的 Latin1Decoder。const
属性
- hashCode → int
- 此对象的哈希值。no setterinherited
- runtimeType → Type
- 对象的运行时类型表示。no setterinherited
方法
-
bind(
Stream< List< stream) → Stream<int> >String> - 转换提供的
stream
。inherited -
cast<
RS, RT> () → Converter< RS, RT> - 为此流转换器提供
Converter<RS, RT>
视图。inherited -
convert(
List< int> bytes, [int start = 0, int? end]) → String - 将
bytes
(无符号 7 位或 8 位整数的列表)转换为相应的字符串。inherited -
fuse<
TT> (Converter< String, TT> other) → Converter<List< int> , TT> - 将此处世象与
other
合并。inherited -
noSuchMethod(
Invocation invocation) → dynamic - 当访问不存在的方法或属性时被调用。inherited
-
startChunkedConversion(
Sink< String> sink) → ByteConversionSink - 开始分块转换。
-
toString(
) → String - 该对象的字符串表示形式。inherited
操作符
-
operator ==(
Object other) → bool - 相等操作符。inherited