我做:
Dim BytArr() as Byte = BitConverter.GetBytes(1234)
因为默认情况下它们是32位,所以它返回4个字节的元素。
我希望能够控制它只返回两个字节。也许只有三个字节。有没有内置的功能来控制它?
我不想依赖使用转移>> 8 >> 16 >> 24 >> 32
等等。
我也不想依赖于将GetBytes()中的数据类型转换为特定的数据类型。
答案 0 :(得分:2)
GetBytes
默认为32位,GetBytes
返回保存数据类型所需大小的数组。如果你传递一个Long,那么你将获得数组中的8个元素。
控制它的最佳方法是投射传入的数据。否则你可以截断一些数字。
话虽如此,你可以这样做:
Dim BytArr() as Byte = Array.Resize(BitConverter.GetBytes(1234), 2)
但是如果你传入的值超过了可以存储在2个字节中的值(在这种情况下),那么你将会有一些非常破碎的代码。