Flex二进制String到ByteArray

时间:2010-08-03 14:46:55

标签: flex string bytearray

在服务器端,我有一个对象数组。每个对象有3个整数字段和2个二进制字段。 我已经编码了二进制数据,json编码了数组&将它发送到Flex客户端。

在客户端,解码数据,我有一个表示二进制数据的字符串(utf已解码)。

现在,我如何将此String转换为ByteArray?或者我如何读取字符串的每个字节?

1 个答案:

答案 0 :(得分:0)

嗯,我找到了答案!

对utf编码二进制数据不是一个好方法。最好的方法似乎是Base64编码。 然后在flex中使用Base64解码,返回ByteArray。和平的蛋糕! Base64_encode增加了大约33%的开销,这比utf8_encode略高,但更容易使用。

PHP:

echo json_encode (base64_encode ($data));

挠曲:

//use a serialization filter for your HTTPService to deocde JSON
var raw:ByteArray = new ByteArray();
var dec:Base64Decoder = new Base64Decoder();
dec.decode(data);
raw = dec.toByteArray();