这是一个非常简单的问题,但是找不到任何关于它的文档。
我有一个简单的类:
public class User
{
public var name:String;
public var age:int;
}我想使用以下代码将其序列化:
var user:User = new User();
user.age = 15;
user.name = "mike";
//now serialize
var bytes:ByteArray = MessagePack.encoder.write(vo);但我得到一个错误:
Error: MessagePack handler for type base not found如何让MessagePack知道User类是什么,如何序列化它?
发布于 2012-10-10 22:41:15
MessagePack看起来不像大多数序列化程序那样能够序列化类。
我建议您在User类中添加一个toObject方法:
public function toObject():Object
{
return {age:this.age, name:this.name}:
}然后你可以序列化你的用户:
var bytes:ByteArray = MessagePack.encoder.write(user.toObject());您还可以添加一个静态fromObject方法,该方法接受一个对象并返回一个用该对象初始化的新用户。
static public function fromObject(o:Object):User
{
var u = new User();
u.age = o.age;
u.name = o.name;
return u;
}https://stackoverflow.com/questions/12792672
复制相似问题