1
我不是在Java中經驗豐富,所以這會直接在我的頭上: -變化時字節數組
Java代碼:
long foo = 1234567890;
byte[] boo = ByteBuffer.allocate(8).putLong(foo).array();
C#代碼:
long foo = 1234567890;
byte[] bar = BitConverter.GetBytes(foo);
// reverse to match Java's Big Endianess
byte[] boo = bar.Reverse().ToArray();
在Java樣品,噓聲= 0,0,0,0,73,-106,2,-46
然而在C#,噓聲= 0,0,0 ,0,73,150,2,210
有人可以有更大的大腦,解釋爲什麼這些不同嗎?
非常感謝!
正是。 C#中相應的數據類型是「sbyte」(有符號字節)。 – Heinzi 2011-03-29 18:12:49
更具體:對於值大於127的值,Java值是將C#值減去256. – 2011-03-29 18:13:47
這是一個絕妙且快速的答案,非常感謝! – isNaN1247 2011-03-29 18:19:34