0
我想連接long和bytearray到另一個bytearray。連接long和bytearray到另一個bytearray
我想是這樣的:
byte[] value1= new byte[16];
byte[] value2= new byte[16];
byte[] finalvalue = new byte[value1.length + value2.length];
long ts = System.currentTimeMillis();
int val = 100;
ByteBuffer.wrap(value1).order(ByteOrder.LITTLE_ENDIAN).asLongBuffer().put(ts);
ByteBuffer.wrap(value2).order(ByteOrder.LITTLE_ENDIAN).asIntBuffer().put(val);
System.arraycopy(value1, 0, finalvalue, 0, value1.length);
System.arraycopy(value2, 0, finalvalue, value1.length,value2.length);
當我試圖把它打印出來,我沒有得到正確的價值觀。它打印這樣
BYTEVALUE -95-15-4410659100000000002000000000000000
它應該打印這樣
- BYTEVALUE- 1354707038625,100
誰能幫我在哪裏,我錯了。
幫助將不勝感激。
更新:
使用使用打印值的StringBuffer這樣的:
StringBuffer sb = new StringBuffer(finalvalue.length);
for (int i = 0; i < finalvalue.length; i++) {
sb.append(finalvalue[i]);
}
顯示用於打印輸出的代碼。 – Jesper
我不確定,只是猜測,是因爲它超過了「字節」限制或什麼? –
@Jesper更新了問題 –