我正在尝试将十六进制字符串转换为二进制。我的代码如下所示:
sw.Write(Convert.ToString(Convert.ToInt32(value, 16), 2));
对于大多数值来说,这样做是可行的;但是当我将十六进制字符串0x101转换为二进制字符串时,我的结果是100000001,而不是000100000001。请帮助我。
string Hex = "001";
var s = String.Join("",
Hex.Select(x => Convert.ToString(Convert.ToInt32(x+"", 16), 2).PadLeft(4,'0')));
使用 String.PadLeft() 怎么样?
string value = "0x001";
string binary = Convert.ToString(Convert.ToInt32(value, 16), 2).PadLeft(12, '0');
Hex
是整数还是字符串? - L.B