2010-03-29 48 views
7

嗨,我得到了一個簡單的問題,一直在竊聽我,我可以找到解決辦法。我得到一個包含帶符號整型數據的數組,我需要將數組中的每個值轉換爲2個字節。我使用C#,我嘗試使用BitConverter.GetBytes(int),但它返回一個4字節的數組。將16位signed int轉換爲2個字節?

任何幫助?

感謝特里斯坦

回答

15

有符號的16位值作爲short而非int最能代表 - 所以使用BitConverter.GetBytes(short)

然而,作爲替代方案:

byte lowByte = (byte) (value & 0xff); 
byte highByte = (byte) ((value >> 8) & 0xff);