public char readChar () throws IOException
  {
    if (m_nInBuf > 0)
    {
      --m_nInBuf;
      if (++m_nBufpos == m_nBufsize)
        m_nBufpos = 0;
      return m_aBuffer[m_nBufpos];
    }

    if (++m_nBufpos == m_nAvailable)
      _adjustBuffSize ();

    final char c = _readByte ();
    m_aBuffer[m_nBufpos] = c;

    // This would be the point to handle CSS (un)escaping
    if (m_bTrackLineColumn)
      _updateLineColumn (c);
    return c;
  }
public char readChar ( ) throws IOException { if ( m_nInBuf > 0 ) { -- m_nInBuf ; if ( ++ m_nBufpos == m_nBufsize ) m_nBufpos = 0 ; return m_aBuffer [ m_nBufpos ] ; } if ( ++ m_nBufpos == m_nAvailable ) _adjustBuffSize ( ) ; final char c = _readByte ( ) ; m_aBuffer [ m_nBufpos ] = c ; if ( m_bTrackLineColumn ) _updateLineColumn ( c ) ; return c ; }
Read a character.

@return The read character
@throws IOException
if an I/O error occurs