如何將字節數組轉換爲int數組?我有一個包含144個項目的字節數組,由於缺乏經驗,我嘗試的方法效率很低。如果之前已經回答了這個問題,我很抱歉,但是我無法在任何地方找到合適的答案。如何將字節數組轉換爲int數組?
回答
簡單:
//Where yourBytes is an initialized byte array.
int[] bytesAsInts = yourBytes.Select(x => (int)x).ToArray();
請務必包括System.Linq
與使用聲明:
using System.Linq;
如果LINQ是不是你的東西,你可以使用它代替:
int[] bytesAsInts = Array.ConvertAll(yourBytes, c => (int)c);
我得到一個錯誤:'byte []'不包含'Select'的定義,沒有擴展方法'Select'接受類型'byte []'的第一個參數'可以找到(您是否缺少使用指令或程序集引用?) – user1166981
@ user1166981:請確保在您的項目中引用'System.Linq'。 (順便說一句,您的.NET框架是哪個版本的?) – Ryan
好的,刪除了錯誤,謝謝 – user1166981
我知道這是一箇舊的帖子,但如果你正在尋找第一個獲得整數數組的包字節數組ED(它可以考慮144元的你的陣列字節),這是一種方式做到這一點:
var size = bytes.Count()/sizeof (int);
var ints = new int[size];
for (var index = 0; index < size; index++)
{
ints[index] = BitConverter.ToInt32(bytes, index * sizeof (int));
}
注:在需要時採取的存儲方式的照顧。 (而在它最的情況下)
不錯,一直在尋找這個。人們似乎忘記了(int)byteVar與將bytearray轉換爲int(例如,一個int爲4個字節)不一樣 – Sliver2009
有一個更好的解決方案:https://stackoverflow.com/a/5896716/238419問題是關於'int []'到'byte []',但是這個解決方案應該工作 –
現在是簡單的像如下,
int[] result = Array.ConvertAll(bytesArray, Convert.ToInt32);
- 1. 將字節數組轉換爲int
- 2. PHP將字節數組轉換爲int
- 3. 將int轉換爲字節數組BufferOverflowException
- 4. 轉換字節數組INT
- 5. 如何將Java字節數組轉換爲Scala字節數組?
- 6. 如何將int數組轉換爲int?
- 7. 將字節數組轉換爲int數組中的錯誤#
- 8. 將int數組轉換爲Golang中的字節數組
- 9. INT轉換爲一個字節數組
- 10. int轉換爲BCD字節數組
- 11. int轉換爲BCD字節數組
- 12. JavaScript:如何將多字節字符串數組轉換爲32位int數組?
- 13. 如何將int數組轉換爲可爲null的int數組?
- 14. 如何將int轉換爲小端字節數組?
- 15. 如何將int轉換爲字節數組然後返回?
- 16. 如何將字符串數組轉換爲int數組?
- 17. 如何將字符串數組轉換爲字節數組? (java)
- 18. 轉換爲字節數組爲int數組填充
- 19. 將GUID數組轉換爲int數組
- 20. 將char數組轉換爲int數組?
- 21. 如何將const unsigned int數組轉換爲int數組
- 22. 將字符串數組(字節值)轉換爲字節數組
- 23. 如何將int轉換爲Byte數組?
- 24. 如何將char數組轉換爲int?
- 25. 如何將Linq數組[]轉換爲int []?
- 26. 將byte []數組轉換爲字節數
- 27. 將字符串轉換爲int數組
- 28. 將int轉換爲字符串數組
- 29. C++將int轉換爲字符數組?
- 30. 將字符串轉換爲int數組
什麼是你已經嘗試的途徑? – Marlon
剛纔提到 - 字節是8位,int是32位,並且您正在將一個字節轉換爲int。 – Bakudan