当我尝试将整数值转换为二进制 16 位时,它只显示 14 位数字。你有什么解决办法吗?
这是我的代码:
StAuto_Int(0) = Integer.Parse(StAuto(0))
TextBox1.Text = StAuto_Int(0)
TextBox2.Text = Convert.ToString(StAuto_Int(0), 2)
发生这种情况是因为 Convert.ToString(value, 2) 不包含前导零。对于固定宽度的 16 位二进制表示,您可以使用 PadLeft(16, "0"c)。
例如:
Dim StAuto() As Integer = {&H3FFF}
Dim StAuto_Int(0) As UInt16
StAuto_Int(0) = Integer.Parse(StAuto(0))
Dim s As String = Convert.ToString(StAuto_Int(0), 2).PadLeft(16, "0"c)
TextBox1.Text = StAuto_Int(0)
TextBox2.Text = $"{s} #of bits: {s.Length}"