code: public final char readCharLE() throws IOException {
          int ch1 = this.read();
          int ch2 = this.read();
          if ((ch1 | ch2) < 0)
              throw new EOFException();
          return (char)((ch2 << 8) + (ch1 << 0));
      }
docs: Reads a Unicode character from this stream in little-endian order.
  This method reads two
  bytes from the stream, starting at the current stream pointer.
  If the bytes read, in order, are
  <code>b1</code> and <code>b2</code>, where
  <code>0&nbsp;&lt;=&nbsp;b1,&nbsp;b2&nbsp;&lt;=&nbsp;255</code>,
  then the result is equal to:
  <blockquote><pre>
  (char)((b2 &lt;&lt; 8) | b1)
  </pre></blockquote>
  <p>
  This method blocks until the two bytes are read, the end of the
  stream is detected, or an exception is thrown.
  
  @return     the next two bytes of this stream as a Unicode character.
  @exception  EOFException  if this stream reaches the end before reading
  two bytes.
  @exception  IOException   if an I/O error occurs.