在Flash AS3中序列化阵列

时间:2010-01-13 01:15:29

标签: flash actionscript-3 serialization flash-cs3

我需要在AS3中序列化和反序列化(即使是一个单词?)数组,因此它可以作为字符串发送。

唯一的问题是它不仅包含文本,而是包含对象。

是否可以像在PHP中一样在AS3中序列化和反序列化数组?我怎么能这样做?

一旦修复了这个错误,我的程序就会很好。

编辑:我需要能够跨多个flash文件同步一个数组,这些文件通过TCP连接并且可以发送简单的东西,如字符串和整数,所以我需要能够一次性传输有关这个的数据。字符串形式。

2 个答案:

答案 0 :(得分:0)

如果您的目标是通过TCP在客户端之间进行通信,那么只需使用套接字上的writeObject方法使用AMF序列化对象。我不确定这是否与你的“字符串形式”要求不一致,因为它更像是效率的二进制格式。

编辑:将对象写入ByteArray,然后Base64对其进行编码以生成字符串。这与某些Web服务处理二进制数据的方式类似,因为它必须放在一个字符串格式中,与xml很好地放在一起,而base64包含所有可打印的字符。

您甚至可以在编码之前压缩bytearray,使得通过线路发送更小。

的ByteArray: http://livedocs.adobe.com/flex/3/html/help.html?content=ByteArrays_2.html

在此论坛帖子中附加了一个Base64库,您可以在互联网上找到其他库: http://www.flexdeveloper.eu/forums/actionscript-3-0/compress-and-uncompress-strings-using-bytearray

答案 1 :(得分:0)