如何在C#中将字节转换为二进制数字字符串?

时间:2014-02-26 10:00:11

标签: c# string byte type-conversion

我正在尝试将一个字节转换为二进制数字字符串 - 未编码,就像它一样,即如果字节= 00110101那么字符串将是“00110101”。

我搜索过高和低,我发现的一切都与获取ASCII或UTF或字节的任何值有关,或者将字符转换为字节,这两者都不是我想要的。只是做ToString()给我int值。

也许我错过了一些明显的东西,我知道这是一个相当罕见的情况。必须有可能没有一些迭代的疯狂循环,当然?

(我将蓝牙线上的字符串发送到旋转的商店展示柜进行编程)

编辑:这是一些代码:

DateTime updateTime = DateTime.Now;
byte dow = (byte)updateTime.DayOfWeek;
Debug.WriteLine(dow.ToString());

如果我打破并检查'dow',它会显示为'3'(星期三),而不是00000011,正如我所料。我刚刚按照下面的建议尝试了BitConverter,但仍然返回'3'。

1 个答案:

答案 0 :(得分:3)

你想使用Convert.ToString()但是指定一个基数,在这种情况下因为它是二进制的,基数为2。

但是,您还需要填充位数,因为它会截断0位数,因此00000001最终会为1

试试这个:

Convert.ToString(theByte,2).PadLeft(8,'0');