[英]How to create a byte[] of unknown size in C#?
我正在嘗試創建一個字節[]給定一些未知的字節數。 這是一個例子:
ArrayList al = new ArrayList();
al.Add(0xCA);
al.Add(0x04);
byte[] test = (byte[])al.ToArray(typeof(byte));
我收到一個錯誤,即數組中的一個或多個值無法轉換為字節。 我在這做錯了什么?
謝謝
嘗試List<byte>
然后使用ToArray
要么使用泛型集合而不是非泛型ArrayList
,要么確保實際使用字節。 0xCA是一個int
,而不是一個byte
。
ArrayList al = new ArrayList();
al.Add((byte)0xCA);
al.Add((byte)0x04);
byte[] test = (byte[])al.ToArray(typeof(byte));
使用List<byte>
如下所示。 當您使用ArrayList然后調用al.Add(0xCA)時,實際上是將int添加到ArrayList中。
List<byte> al = new List<byte>();
...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.