Class Xml10FilterReader

  • All Implemented Interfaces:
    Closeable, AutoCloseable, Readable

    public class Xml10FilterReader
    extends FilterReader
    Provides an XML 1.0 filter reader.

    See: http://info.tsachev.org/2009/05/skipping-invalid-xml-character-with.html

    Since:
    4.1.0
    • Constructor Detail

      • Xml10FilterReader

        public Xml10FilterReader​(Reader in)
        Creates filter reader which skips invalid xml characters.
        Parameters:
        in - original reader
    • Method Detail

      • read

        public int read​(char[] cbuf,
                        int off,
                        int len)
                 throws IOException
        Every overload of Reader.read() method delegates to this one so it is enough to override only this one.
        To skip invalid characters this method shifts only valid chars to left and returns decreased value of the original read method. So after last valid character there will be some unused chars in the buffer.
        Overrides:
        read in class FilterReader
        Parameters:
        cbuf - the character buffer
        off - the offset
        len - the buffer length
        Returns:
        Number of read valid characters or -1 if end of the underling reader was reached.
        Throws:
        IOException - if an error occurs