如何将对象转换为列表(数组字节)
我有MyClass类的实例(某个对象),我想从该对象获取字节。如何实现呢?
码:
class MyClass {}
var myClass = MyClass()
List<int> getBytesFromObject(Object object) {
??? what here should be ???
}
so I can use it like:
List<int> bytes = getBytesFromObject(myClass)
最佳答案
没有将Dart对象序列化为二进制的内置方法。但是,您可以将Dart对象转换为JSON字符串,然后将此字符串转换为字节数组(然后将字节数组转换回字符串,然后将此字符串转换为对象)。这两个都是“dart:convert”包的一部分:
https://api.dartlang.org/stable/2.2.0/dart-convert/json-constant.html
https://api.dartlang.org/stable/2.2.0/dart-convert/utf8-constant.html
注意,您需要在自定义类上手动实现“toJson()”方法。有一些软件包可以帮助您生成必要的代码:
https://pub.dartlang.org/packages/json_serializable
关于arrays - 如何将对象转换为字节数组(将对象转换为List <int>),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55632438/