我通过Ruby向服务器执行UDP请求。服务器的响应是混合内容,这意味着我得到字符串、数字等等。我知道如何解释响应,但我有麻烦的字符串,因为它们的长度可以变化。所有字符串都以零结尾
字符串可以像这样:
[84, 104, 101, 32, 83, 116, 114, 101, 97, 109, 33, 32, 50, 52, 47, 55,
32, 66, 97, 100, 119, 97, 116, 101, 114, 32, 91, 65, 108, 108, 116,
97, 108, 107, 93, 0]
UTF8编码,代表The Stream! 24/7 Badwater [Alltalk]
。
如前所述,响应中有更多字节,而不仅仅是像上面那样的单个字符串。所有固定长度的内容都可以很容易地用string.unpack
提取,但我不知道如何提取字符串。我必须手动解析字节流还是有办法继续使用string.unpack
?
整个响应如下所示:http://paste.org/59395
协议详细信息:http://tinyurl.com/bvyepsl
哎呀,只见树不见林,对不起。
您可以使用a_string.unpack("Z*")