Właśnie znalazłem, że nie ma metody readUnsignedInt
() w klasie RandomAccessFile
. Czemu? Czy istnieje sposób obejścia odczytu niepodpisanego int z pliku?Dlaczego nie ma wartości readUnsignedInt w klasie RandomAccessFile?
Edit:
Chcę przeczytać unsigned int z pliku i umieścić go w długiej przestrzeni.
Edit2:
Nie można użyć readLong(). odczyta 8 bajtów, a nie 4 bajty. dane w pliku mają unsigned ints w zakresie 4 bajtów.
Edit3:
Znaleziono odpowiedź tutaj: http://www.petefreitag.com/item/183.cfm
Edit4:
jak około jeśli plik danych jest little-endian? musimy najpierw wymienić bity?
Java nie obsługuje liczb całkowitych bez znaku. http://stackoverflow.com/questions/430346/why-doesnt-java-support-unsigned-ints – Swati
@Swati: Cóż, mogliby zrobić to tak jak z 'readUnsigned Short()', który czyta 2 bajty i zwraca int : Przeczytaj 4 bajty i zwróć długi. – musiKk
Mogli również zaimplementować niepodpisaną int, ale co można zrobić. – Swati