Dart 的 JSON.encode 和 JSON.decode 不适用于 BLOB SQL 类型。我正在寻找解决方案,并找到了很多关于为什么它不能开箱即用(或 native )的解释。
所以我想知道如何有效地使用 JSON 编码和解码 BLOB 数据。
编辑1:添加一个例子。
我在 MySQL 数据库上有一个名为“some_text”的 TEXT 类型字段。以下是其内容:
“这是 some_text 字段内容”。
当 SQLJocky 返回 some_text 时,它以“Blob”的形式存储在 Dart 中的 var 上。一个简单的“returnVar.runtimeType”证实了这一点。
所以现在我需要将此 Blob 文本“转换”为普通字符串,因为 JSON.encode/decode 不适用于第一个。
最佳答案
这应该有效,但未经测试
import 'package:crypto/crypto.dart';
var base64String = CryptoUtils.bytesToBase64(yourBlob.toBytes());
另一个方向
var blob = new Blob.fromBytes(CryptoUtils.base64StringToBytes(base64String));
关于json - Blob 和 JSON : How to encode and decode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25342127/