Tôi đang cố gắng đọc tệp nhị phân trong C#, nhưng tôi đang gặp phải sự cố. tôi tuyên bố như sau:Số thập lục phân C#
public static readonly UInt32 NUMBER = 0XCAFEBABE;
Sau đó, khi đọc từ đầu của tập tin tôi yêu cầu để đọc 4 byte đầu tiên (đã thử nhiều cách khác nhau, nhưng điều này là đơn giản nhất):
UInt32 num = in_.ReadUInt32(); // in_ is a BinaryReader
Trong khi tôi có rằng 4 byte là CA, FE, BA và BE (trong hex) trong khi chuyển đổi chúng thành UInt
Tôi nhận được các giá trị khác nhau. SỐ là 3405691582, num là 3199925962. Tôi cũng đã cố gắng để làm điều này:
byte[] f2 = {0xCA, 0xFE, 0xBA, 0xBE};
và kết quả làm BitConverter.ToUInt32(new byte[]{0xCA, 0xFE, 0xBA, 0xBE},0)
là 3199925962.
bất cứ ai có thể giúp tôi?
nhờ
Các bạn đã thử 'byte [ ] f2 = {0xBE, 0xBA, 0xFE, 0xCA}; '? http://en.wikipedia.org/wiki/Endianness – I4V
'CAFEBABE', đó là số hot: D – Nolonar