2011-03-22 40 views
0

在.NET 2.0中有一個API,可以讓我快速將整數列表轉換爲字節數組(List<int>byte[])?生成的字節數組應該是整數值序列的按位二進制表示,因此使用默認的.NET類型序列化對List實例進行分段操作將不起作用。將列表<int>轉換爲字節[]

+0

序列化在什麼情況下?自動作爲二進制序列化/ XML序列化/其他的一部分,或手動? – 2011-03-22 11:08:51

+0

另外,你是否考慮過排序? – 2011-03-22 11:10:04

+0

@Ondrej endianess對我而言並不重要。重要的是,字節數組僅包含(僅)整數中的所有比特。 – bitbonk 2011-03-22 11:18:14

回答

3
List<int> intList = new List<int>(); 
int[] intArray = intList.ToArray(); 
byte[] byteArray = new byte[intArray.Length*4]; 
Buffer.BlockCopy(intArray, 0, byteArray, 0, byteArray.Length); 

Buffer.BlockCopy使用原始存儲器地址而不是陣列索引來複制陣列數據。它只適用於基元數組。