[Moscow.pm] unpack

Alexandr Alexeev afiskon на gmail.com
Вт Фев 7 03:54:48 PST 2012


Ну, как варианты:

1. my @bytes = map { ord($_) } split //, $data; # и тупо работает с байтами
2. Поищите готовый модуль для работы с вашими данным
2. Если все действительно так плохо, напишите XS

А с чем вы таким работаете, если не секрет?

7 февраля 2012 г. 15:41 пользователь Ivan Petrov
<i.petro.77.00 на gmail.com>написал:

> в некоторых случаях нельзя составить полное выражение для unpack и
> приходится итеративно вытаскивать данные.
>
> например
>
> $str = unpack 'L / a*', $data;
>
> заберет строку из начала $data и потом можно будет сделать
> substr $data, 0, length $str + 4, '';
>
> и продолжить изымать данные из $data следующими итерациями unpack.
>
> однако если например мы вынимаем две-три-N строк одним выражением, а
> так же используем выражения вроде 'w / a*', то посчитать общую длину
> того что мы вынули становится довольно накладно, а в некоторых случаях
> и получается что надо pack сделать чтобы понять какая длина была в
> упакованном виде (как например в случаях с 'w').
>
> Вопрос: можно как-то решать эти проблемы не упаковывая обратно все?
> --
> Moscow.pm mailing list
> moscow-pm на pm.org | http://moscow.pm.org
>



-- 
С уважением, Александр
Личный блог: http://eax.me/
Мой форум: http://it-talk.org/
Мой Twitter: http://twitter.com/afiskon
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20120207/9138e7e1/attachment.html>


Подробная информация о списке рассылки Moscow-pm