我剛剛發現RandomAccessFile
類中沒有readUnsignedInt
()方法。爲什麼?有沒有解決方法從文件中讀取一個無符號整型數?爲什麼在RandomAccessFile類中沒有readUnsignedInt?
編輯:
我想從文件中讀取一個無符號整數,並把它變成一個長空間。
EDIT2:
不能使用readLong()。它將讀取8個字節而不是4個字節。該文件中的數據具有4字節範圍內的無符號整數。
EDIT3:
找到答案在這裏:http://www.petefreitag.com/item/183.cfm
Edit4:
怎麼樣,如果數據文件是little-endian的?我們需要先交換位?
Java不支持無符號整數。 http://stackoverflow.com/questions/430346/why-doesnt-java-support-unsigned-ints – Swati 2011-05-20 20:43:04
@Swati:好吧,他們可以用'readUnsignedShort()'讀取2個字節並返回一個int :讀取4個字節並返回一個長整型。 – musiKk 2011-05-20 20:46:03
他們也可能剛剛實現了unsigned int,但你可以做什麼。 – Swati 2011-05-20 20:51:06