Class ReaderFactory


  • public class ReaderFactory
    extends java.lang.Object
    Utility to create Readers from streams, with explicit encoding choice: platform default, XML, or specified.
    See Also:
    Charset, Supported encodings
    • Field Summary

      Fields 
      Modifier and Type Field Description
      static java.lang.String FILE_ENCODING
      The file.encoding System Property.
      static java.lang.String ISO_8859_1
      ISO Latin Alphabet #1, also known as ISO-LATIN-1.
      static java.lang.String US_ASCII
      Seven-bit ASCII, also known as ISO646-US, also known as the Basic Latin block of the Unicode character set.
      static java.lang.String UTF_16
      Sixteen-bit Unicode Transformation Format, byte order specified by a mandatory initial byte-order mark (either order accepted on input, big-endian used on output).
      static java.lang.String UTF_16BE
      Sixteen-bit Unicode Transformation Format, big-endian byte order.
      static java.lang.String UTF_16LE
      Sixteen-bit Unicode Transformation Format, little-endian byte order.
      static java.lang.String UTF_8
      Eight-bit Unicode Transformation Format.
    • Constructor Summary

      Constructors 
      Constructor Description
      ReaderFactory()  
    • Method Summary

      All Methods Static Methods Concrete Methods 
      Modifier and Type Method Description
      static java.io.Reader newPlatformReader​(java.io.File file)
      Create a new Reader with default plaform encoding.
      static java.io.Reader newReader​(java.io.File file, java.lang.String encoding)
      Create a new Reader with specified encoding.
      static java.io.Reader newReader​(java.io.InputStream in, java.lang.String encoding)
      Create a new Reader with specified encoding.
      static java.io.Reader newReader​(java.net.URL url, java.lang.String encoding)
      Create a new Reader with specified encoding.
      static java.io.Reader newXmlReader​(java.io.File file)
      Create a new Reader with XML encoding detection rules.
      static java.io.Reader newXmlReader​(java.io.InputStream in)
      Create a new Reader with XML encoding detection rules.
      static java.io.Reader newXmlReader​(java.net.URL url)
      Create a new Reader with XML encoding detection rules.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • ISO_8859_1

        public static final java.lang.String ISO_8859_1
        ISO Latin Alphabet #1, also known as ISO-LATIN-1. Every implementation of the Java platform is required to support this character encoding.
        See Also:
        Charset, Constant Field Values
      • US_ASCII

        public static final java.lang.String US_ASCII
        Seven-bit ASCII, also known as ISO646-US, also known as the Basic Latin block of the Unicode character set. Every implementation of the Java platform is required to support this character encoding.
        See Also:
        Charset, Constant Field Values
      • UTF_16

        public static final java.lang.String UTF_16
        Sixteen-bit Unicode Transformation Format, byte order specified by a mandatory initial byte-order mark (either order accepted on input, big-endian used on output). Every implementation of the Java platform is required to support this character encoding.
        See Also:
        Charset, Constant Field Values
      • UTF_16BE

        public static final java.lang.String UTF_16BE
        Sixteen-bit Unicode Transformation Format, big-endian byte order. Every implementation of the Java platform is required to support this character encoding.
        See Also:
        Charset, Constant Field Values
      • UTF_16LE

        public static final java.lang.String UTF_16LE
        Sixteen-bit Unicode Transformation Format, little-endian byte order. Every implementation of the Java platform is required to support this character encoding.
        See Also:
        Charset, Constant Field Values
      • UTF_8

        public static final java.lang.String UTF_8
        Eight-bit Unicode Transformation Format. Every implementation of the Java platform is required to support this character encoding.
        See Also:
        Charset, Constant Field Values
      • FILE_ENCODING

        public static final java.lang.String FILE_ENCODING
        The file.encoding System Property.
    • Constructor Detail

      • ReaderFactory

        public ReaderFactory()
    • Method Detail

      • newXmlReader

        public static java.io.Reader newXmlReader​(@Nonnull
                                                  java.io.InputStream in)
                                           throws java.io.IOException
        Create a new Reader with XML encoding detection rules.
        Parameters:
        in - not null input stream.
        Returns:
        an XML reader instance for the input stream.
        Throws:
        java.io.IOException - if any.
        See Also:
        XmlStreamReader
      • newXmlReader

        public static java.io.Reader newXmlReader​(@Nonnull
                                                  java.io.File file)
                                           throws java.io.IOException
        Create a new Reader with XML encoding detection rules.
        Parameters:
        file - not null file.
        Returns:
        an XML reader instance for the input file.
        Throws:
        java.io.IOException - if any.
        See Also:
        XmlStreamReader
      • newXmlReader

        public static java.io.Reader newXmlReader​(@Nonnull
                                                  java.net.URL url)
                                           throws java.io.IOException
        Create a new Reader with XML encoding detection rules.
        Parameters:
        url - not null url.
        Returns:
        an XML reader instance for the input url.
        Throws:
        java.io.IOException - if any.
        See Also:
        XmlStreamReader
      • newPlatformReader

        public static java.io.Reader newPlatformReader​(@Nonnull
                                                       java.io.File file)
                                                throws java.io.FileNotFoundException
        Create a new Reader with default plaform encoding.
        Parameters:
        file - not null file.
        Returns:
        a reader instance for the input file using the default platform charset.
        Throws:
        java.io.FileNotFoundException - if any.
        See Also:
        Charset.defaultCharset()
      • newReader

        public static java.io.Reader newReader​(@Nonnull
                                               java.io.InputStream in,
                                               @Nonnull
                                               java.lang.String encoding)
                                        throws java.io.UnsupportedEncodingException
        Create a new Reader with specified encoding.
        Parameters:
        in - not null input stream.
        encoding - not null supported encoding.
        Returns:
        a reader instance for the input stream using the given encoding.
        Throws:
        java.io.UnsupportedEncodingException - if any.
        See Also:
        Supported encodings
      • newReader

        public static java.io.Reader newReader​(@Nonnull
                                               java.io.File file,
                                               @Nonnull
                                               java.lang.String encoding)
                                        throws java.io.FileNotFoundException,
                                               java.io.UnsupportedEncodingException
        Create a new Reader with specified encoding.
        Parameters:
        file - not null file.
        encoding - not null supported encoding.
        Returns:
        a reader instance for the input file using the given encoding.
        Throws:
        java.io.FileNotFoundException - if any.
        java.io.UnsupportedEncodingException - if any.
        See Also:
        Supported encodings
      • newReader

        public static java.io.Reader newReader​(@Nonnull
                                               java.net.URL url,
                                               @Nonnull
                                               java.lang.String encoding)
                                        throws java.io.IOException
        Create a new Reader with specified encoding.
        Parameters:
        url - not null url.
        encoding - not null supported encoding.
        Returns:
        a reader instance for the input url using the given encoding.
        Throws:
        java.io.IOException - if any.
        See Also:
        Supported encodings