Я новичок в perl. Мне нужно написать код golang, который считывает UDP-пакет, отправленный из клиента perl UDP-сокета. В основном, данные Perl клиентские пакеты, используя шаблон "N/A * N/A *", как в следующем:Распаковать буфер, который упакован perl с шаблоном «N/a * N/a *» в golang
$them = pack($sockaddr,&AF_INET, $data_port, $broadaddr);
$actual_data = pack("N/a* N/a*", $string1, $string2);
send(S,$actual_data,0,$them) || die $!;
Мой вопрос:
- Что означает «N/A * N/a * "на самом деле означает? Простое объяснение было бы полезно. Как две строки фактически упакованы?
- Как я могу написать аналогичную функцию упаковки в golang, заданную двумя строками unicode; и если я получаю упакованный буфер, отправленный из perl UDP-клиента, как я могу написать соответствующую функцию «в golang», чтобы распаковать ее. Есть ли какая-либо библиотека, которая может справиться с этим, чтобы я мог использовать golang на одном уровне с perl для программирования сокетов.
См. [Perlpacktut] (http://perldoc.perl.org/perlpacktut.html) и [документация для 'pack'] (http://perldoc.perl.org/functions/pack.html). – ThisSuitIsBlackNot