float readFloatLittleEndian() { int accum = 0; for ( int shiftBy=0; shiftBy<32; shiftBy+=8 ) { accum |= ( readByte () & 0xff ) << shiftBy; } return Float.intBitsToFloat( accum ); // there is no such method as Float.reverseBytes( f ); }