如何将整数值转换为二进制16位

问题描述 投票:0回答:1

当我尝试将整数值转换为二进制 16 位时,它只显示 14 位数字。你有什么解决办法吗?

这是我的代码:

StAuto_Int(0) = Integer.Parse(StAuto(0))
TextBox1.Text = StAuto_Int(0)
TextBox2.Text = Convert.ToString(StAuto_Int(0), 2)
vb.net
1个回答
0
投票

发生这种情况是因为 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}"

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.