public float DM_RFLT ( int word ) throws IOException { if ( rf == null ) { throw new IOException ( "DM_RFLT: no file to read from" ) ; } if ( dmLabel == null ) { throw new IOException ( "DM_RFLT: reader not initialized" ) ; } rf . seek ( getOffset ( word ) ) ; if ( needToSwap ) { // set the order //if ((dmLabel.kmachn != MTMACH) && // ((dmLabel.kvmst && ! mvmst) || // (mvmst && !dmLabel.kvmst))) { rf . order ( RandomAccessFile . LITTLE_ENDIAN ) ; // swap } else { rf . order ( RandomAccessFile . BIG_ENDIAN ) ; } float rdata = rf . readFloat ( ) ; if ( RMISSD != dmLabel . smissd ) { if ( Math . abs ( rdata - dmLabel . smissd ) < RDIFFD ) { rdata = RMISSD ; } } // reset to read normally rf . order ( RandomAccessFile . BIG_ENDIAN ) ; return rdata ; }
Read a float