Acabo de encontrar que no hay un método readUnsignedInt
() en la clase RandomAccessFile
. ¿Por qué? ¿Hay alguna solución alternativa para leer un int sin signo del archivo?¿Por qué no readUnsignedInt en la clase RandomAccessFile?
Editar:
quiero leer un entero sin signo de archivo y ponerlo en un largo espacio.
Edit2:
No se puede utilizar readLong(). leerá 8 bytes, no 4 bytes. los datos en el archivo tienen entradas sin firmar en un rango de 4 bytes.
Edit3:
respuesta encontrado aquí: http://www.petefreitag.com/item/183.cfm
Edit4:
¿qué tal si el archivo de datos es ascendente hacia la izquierda? Necesitamos intercambiar bits primero?
Java no admite enteros sin signo. http://stackoverflow.com/questions/430346/why-doesnt-java-support-unsigned-ints – Swati
@Swati: Bueno, podrían haberlo hecho con 'readUnsignedShort()' que lee 2 bytes y devuelve un int : Lee 4 bytes y devuelve un largo. – musiKk
También podrían haber implementado unsigned int, pero ¿qué se puede hacer? – Swati