【发布时间】:2012-07-16 18:03:08
【问题描述】:
我正在尝试将字节值转换为二进制以进行数据传输。基本上,我在字节数组中以二进制形式(“10101100”)发送像“AC”这样的值,其中“10101100”是一个字节。我希望能够接收这个字节并将其转换回“10101100”。到目前为止,我根本没有成功,真的不知道从哪里开始。任何帮助都会很棒。
编辑:抱歉,我没有意识到我忘了添加具体细节。
基本上我需要使用字节数组通过套接字连接发送二进制值。我可以这样做,但我不知道如何转换这些值并使它们正确显示。这是一个例子:
我需要发送十六进制值 ACDE48 并能够将其解释回来。根据文档,我必须通过以下方式将其转换为二进制:byte [] b={10101100,11011110,01001000},其中数组中的每个位置都可以保存 2 个值。然后,我需要在发送和接收这些值后将它们转换回来。我不知道该怎么做。
【问题讨论】:
-
“二进制”是什么意思?所有值都以二进制形式存储(因为它们无论如何都位于状态为 1 或 0 的晶体管中)。你不可能真的想要一个“10101100”的ASCII字符串,是吗?!
-
您想要一个值为“10101100”的字符串,还是想要一个包含该数字的字节变量?
-
切题:您是否有理由手动滚动自己的二进制序列化而不是使用库支持附带的众多标准格式之一?
-
@Lion:以什么方式? 0xAC == 二进制 10101100。
-
@Lion 我认为您对引号的理解太过分了。
0xAC==0b10101100