我试图通过套接字发送一系列二进制字节,以符合公司的特定标准。我们公司没有人在 Ruby 中使用过这个功能,但在其他语言中,它们逐字节地发送数据(通常使用某种“打包”方法)。
我找不到任何方法来即时创建二进制或创建字节(最接近的是将字符串转换为代表其字符的字节)。
我知道你可以这样写:
@var = 0b101010101
但如果我想将形式为“101010101”的字符串或使用string.to_i(2)创建的结果整数转换为实际的二进制,该怎么办?如果我只是将字符串发送到套接字上,那么发送的是否只是“0”和“1”的 ASCII 码而不是文字本身?
肯定有某种本地的 Ruby 方法可以做到这一点吧?
inspect
检查该字符串,Ruby通常会打印出“/”。对于任何ASCII字符都是一样的。Ruby实际上并不知道你的字符串是否是“二进制字符串”,对于Ruby来说,你的字符串基本上是一系列字节(除了在1.9中添加了一些编码信息)。 - David Grayson