JsonUtf8Encoder 构造函数
创建转换器。
如果 indent
非空,转换器会尝试“格式化”JSON,并使用 indent
作为缩进。否则,结果字符串除字符串字面量外没有空格。如果 indent
包含无效的JSON空白字符,则结果将不是有效的JSON。JSON空白字符包括空格(U+0020)、制表符(U+0009)、换行符(U+000a)和回车符(U+000d)(《ECMA 404》)。
bufferSize
是用于收集UTF-8码单元的内部缓冲区的大小。如果使用 startChunkedConversion,它将是块的大小。
JSON编码器直接处理数字、字符串、布尔值、null、列表和映射。
任何其他对象都尝试通过 toEncodable
转换为可转换类型之一的对象。
如果省略了 toEncodable
,它默认为在对象上调用 .toJson()
。
实现
JsonUtf8Encoder(
[String? indent, dynamic toEncodable(dynamic object)?, int? bufferSize])
: _indent = _utf8Encode(indent),
_toEncodable = toEncodable,
_bufferSize = bufferSize ?? _defaultBufferSize;