2
我試圖按字節讀取一些文件。問題是,Java顯示我不是相同的字節,我可以使用遠十六進制編輯器讀取。使用Java以字節讀取文件的非預期字節
使用遠讀取的字節: 00 00 00 17 00 00 00 29 00 00 00 99 00 00 00 9B
讀取的字節使用Java: 0 0 0 17 0 0 0 29 0 0 0 22 0 0 0 3A
Java代碼:
while ((line = (byte) _br.read()) != -1) {
lines.add(line);
System.out.println("lines = " + Integer.toHexString(line));
}
這裏您正在做幾個隱式轉換。線條列表的類型是什麼?我猜測問題是有符號/無符號溢出,因爲9B和99都是127以上。 – zeller
謝謝,解決了這個問題! –