在 C# 中创建消息时,我做了类似的事情。
ByteMessage[i] = "A"
ByteMessage[++i] = "B"
ByteMessage[++i] = "C"
......................
Run Code Online (Sandbox Code Playgroud)
我想在 VB.NET 中实现这一点,除了 VB.NET 不支持++or--运算符。我试过这样的事情
ByteMessage(i += 1) = "A"
ByteMessage(i += 1) = "B"
ByteMessage(i += 1) = "C"
......................
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用。该MATH库似乎没有任何在它的任何使用。
在 VB.NET 中是否有像 C# 那样的干净解决方案?
我有这段代码
long num = Int64.Parse(Convert.ToString(random.Next(0, 65535), 2).PadLeft(16, '0'))
Run Code Online (Sandbox Code Playgroud)
使用此代码时,字符串不会使用前导零填充.我不确定,但我的猜测是,当字符串被解析时,它会从某种原因删除前导零?
如果我做这样的事情
long num = Int64.Parse(Convert.ToString(random.Next(0, 65535), 2).PadLeft(16, '8'))
Run Code Online (Sandbox Code Playgroud)
或者任何非零的数字,它将正确地输出到带有前导8的16位数字.
为什么会发生这种情况有一个很好的解释?
还有一个快速简单的解决方案吗?
这不是任何使用int.ToString("D16")或任何类型的重复.我相信这是一个独特的问题.