Tôi cần phải đọc một mảng byte 16 bit dưới dạng số không dấu, và Java không hỗ trợ loại ngắn chưa ký.
Vậy làm cách nào tôi có thể làm điều đó ?? Hãy giúp tôi!!Đọc Byte [] as unsigned short Java
7
A
Trả lời
9
Giả sử bạn có nó có sẵn như là dữ liệu nhị phân từ một nguồn không phải Java mà bạn phải đọc và làm việc với các giá trị trong Java: đọc nó như là một (đã ký) short
, và sau đó chuyển nó sang int
như sau:
int intVal = shortVal >= 0 ? shortVal : 0x10000 + shortVal
bạn không thể đại diện cho tất cả các giá trị của một ngắn unsigned trong một thời gian ngắn, nhưng trong một int, bạn có thể.
4
Tôi không biết liệu bạn CÓ phải sử dụng chữ ký chưa được ký, nhưng trong trường hợp bạn không làm như vậy, bạn luôn có thể sử dụng thẻ char để giữ một dấu ngắn. Hãy xem bài viết này cung cấp cho một cái nhìn tổng quan đơn giản
0
Bạn có thể có một cái nhìn tại
Các vấn đề liên quan
- 1. Java unsigned byte [2] để int?
- 2. Hướng dẫn SSE: Byte + Short
- 3. Làm cách nào tôi có thể truy cập mảng byte dưới dạng quần short trong Java
- 4. sql server 4 byte unsigned int
- 5. 4 byte unsigned int trong SQL Server?
- 6. CipherInputStream chỉ đọc 16 byte (AES/Java)
- 7. Đọc một mảng C# byte trong Java
- 8. 2 byte để ngắn java
- 9. cách đọc int đã ký từ byte trong java?
- 10. Khởi tạo mảng byte unsigned sử dụng hex số
- 11. Cách đọc byte nhanh nhất trong D2
- 12. cách đọc byte theo byte từ một tệp
- 13. C++ đọc unsigned char từ luồng tập tin
- 14. IndexOutofBounds khi sử dụng byte đọc của Java
- 15. Tại sao kết quả của unsigned char << unsigned char không phải là unsigned char
- 16. Java: byte [] tới Byte []
- 17. Java - Byte [] tới byte []
- 18. WebRequest GetResponseStream đọc byte
- 19. sử dụng java.util.Scanner để đọc byte tệp theo byte
- 20. Cách sử dụng 'short' trong C++
- 21. Inline If statement - short-circuiting
- 22. C - unsigned int để unsigned char mảng chuyển đổi
- 23. Java: Thực hiện một 128bit Integer Unsigned
- 24. Java tương đương với unsigned long long?
- 25. #Eval Short Date
- 26. Cách đọc một byte và lưu giá trị ASCII của byte theo số nguyên trong C++
- 27. unsigned ngắn vs unsigned int - đôi khi họ là cùng một phạm vi?
- 28. Hiểu các byte Java
- 29. Tích phân Byte hoán đổi trong C++
- 30. Hành vi của sự thay đổi unsigned đúng áp dụng cho byte biến
Một mảng byte 16 bit? Vì vậy, nó là một mảng chiều dài 2? –
Tôi nghĩ bạn có nghĩa là chuyển đổi, không đọc, phải không? Vì vậy, chuyển đổi hai byte thành một giá trị số nguyên duy nhất? Bí quyết là bạn sẽ cần lưu trữ nó như một 'int', không phải là' short'. – 101100
Kiểu dữ liệu 'char' về cơ bản là một ký tự 'unsigned'. Nhưng kỹ thuật phổ biến nhất là sử dụng 'int'. – corsiKa