我試圖發送一個十六進制字符到套接字來表示一條新消息。此代碼的工作:通過套接字發送十六進制字符
$socket->send("\x{0B}");
$socket->send($contents);
$socket->send("\x{1C}");
$socket->send("\x{0D}");
然而,由於這種情況發生在一個循環,我需要可變的十六進制字符,而我還沒有弄清楚如何得到它的工作。這是我嘗試過的。
my $start_char = get(); # returns, for example 0B
my $end_char = get(); # 1C
my $end_seg = get(); #0D
$socket->send("\x{$start_char}");
$socket->send($contents);
$socket->send("\x{$end_char}");
$socket->send("\x{$end_seg}");
我可以確認,通過該函數返回的變量是在Perl的一側是正確的,但服務器不接受他們成爲有效的字符。有關如何做到這一點的任何輸入?
有沒有這樣的事情* *十六進制字符*,也沒有任何要求使用字符的十六進制表示「發送」。 – mob 2011-04-12 17:56:42
@mob,我會說有16個十六進制字符,但我同意他說「十六進制字符」時他只是指「字符」。 – ikegami 2011-04-12 18:23:08