我在python以下代碼:轉換字節整數中的Java VS的Python
myBytes = m.digest()
for one in myBytes:
print(one, end=' ')
print(end='\n')
intlist = int.from_bytes(myBytes, 'little')
print("intlist", intlist)
上述代碼打印以下結果
intList中306485766027497339553611008967975560776
現在我想在java中獲得完全相同的結果。這是到目前爲止我的代碼:
byte[] myBytes = md.digest();
System.out.println(Arrays.toString(myBytes));
BigInteger intlist = new BigInteger(myBytes);
System.out.println("intlist=" + intlist);
,結果我從這個得到的是以下幾點:
[72,-26,-90,56,69,98,5,-67 ,49,43,-127,54,-19,2,-109,-26 ]
intList中= 96902015312221227689534558263304164326
Java中的結果是錯誤的,我想做的事情。我想獲得與python代碼完全相同的值。
任何想法?
你檢查字節順序? Java默認爲Big Endian – Cyb3rFly3r