Согнуть двоичную строку в ByteArray - PullRequest
0 голосов
/ 03 августа 2010

На стороне сервера у меня есть массив объектов. Каждый объект имеет 3 целых поля и 2 двоичных поля. Я utf закодировал двоичные данные, а json закодировал массив и отправил его на клиентскую часть Flex.

На стороне клиента, декодирующего данные, у меня есть строка, представляющая двоичные данные (utf-декодированные).

Теперь, как я могу преобразовать эту строку в ByteArray? Или как я могу прочитать каждый байт строки?

1 Ответ

0 голосов
/ 03 августа 2010

Ну, я как-то нашел ответ!

Это не очень хорошее решение для кодирования двоичных данных в utf.Наилучшим способом кажется кодирование Base64.Затем используйте декодирование Base64 в flex, которое возвращает ByteArray.Мир пирога!Base64_encode добавляет примерно 33% накладных расходов, что немного больше, чем utf8_encode, но с ним гораздо проще работать.

php:

echo json_encode (base64_encode ($data));

flex:

//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();
...