我试图使用perl程序通过套接字发送一个字符串.我收到一个错误,说该文本包含一个宽字符,并且套接字无法处理.有没有办法:
答:通过插座打开宽字符
要么
B:从字符串中删除所有宽字符?
ike*_*ami 11
这意味着您正在尝试通过句柄发送文本,但句柄只能传递字节.您需要将文本序列化为字节.具体来说,您要对文本进行编码.您可以使用Encode的encode功能
print $sock encode('some_encoding', $text);
Run Code Online (Sandbox Code Playgroud)
或者您可以指示套接字为您执行此操作
binmode $sock, ':encoding(some_encoding)'; # once
print $sock $text;
Run Code Online (Sandbox Code Playgroud)
替换some_encoding为套接字另一端所需的编码(例如UTF-8).