ByteArray:
属性
endian:String == Endian.BIG_ENDIAN/Endian.LITTLE_ENDIAN。
length:uint ByteArray的字节数
position:uint 将文件指针的当前位置(以字节为单位)移动或返回到ByteArray对象中。
方法
大体分为read或者write。另外clear()---清空。
讲下下面两个:
readObject():* 从字节数组中读取一个以AMF序列化进行编码的对象,返回一个反序列化的对象。
writeObject(ob:*):void将一个对象以AMF序列化编码的格式写入到字节数组中。
使用这两个函数可以实现对一个对象的深复制,但是只支持简单类型的复制,readObject()得到的结果不能转换为想要的复杂类型,
需要的话使用registerClassAlias(packgeName:String,type:String)。
function deepClone(object:*):*{
var byteArr:ByteArray = new ByteArray();
byteArr.endian = Endian.BIG_ENDIAN;
byteArr.writeObject(object);
byteArr.position = 0;
trace("byteArr的字节数为" + byteArr.length);
return byteArr.readObject();
}