Java lesen von Dateien, Little-Endian

Runtime

Top Contributor
Hallo Leute,

gibt es irgend eine Klasse in der Java SE library, die das lesen von Dateien, die mit Little-Endian codiert (oder wie man das nennt) ünterstützt? Und wie liest man am besten eine Datei mit einem Header?
 
Bei Big- und Little Endian ist das wie mit "Mama" und "Bier". Oder eher mit "Bier" und "Reib". Die eigentliche Methode "readInt" aus DataInput ist
Code:
    public final int readInt() throws IOException {
        int ch1 = in.read();
        int ch2 = in.read();
        int ch3 = in.read();
        int ch4 = in.read();
        if ((ch1 | ch2 | ch3 | ch4) < 0)
            throw new EOFException();
        return ((ch1 << 24) + (ch2 << 16) + (ch3 << 8) + (ch4 << 0));
    }
Mit einem
Code:
return ((ch1 << 0) + (ch2 << 8) + (ch3 << 16) + (ch4 << 25));
sollte es eigentlich schon getan sein.

Header? Entweder zerpflücken oder ignorieren.. :bahnhof:
 
Halloechen,

oder etwas in dieser Form:
Code:
public static int byteArrayLittleEndianToInt(byte[] byteArray)
{
    return ByteBuffer.wrap(byteArray).order(ByteOrder.LITTLE_ENDIAN).getInt();
}

Gruss, FFNB.
 

Zurück
Oben