Class XmlStreamWriter

  • All Implemented Interfaces:
    java.io.Closeable, java.io.Flushable, java.lang.Appendable, java.lang.AutoCloseable

    public class XmlStreamWriter
    extends java.io.Writer
    Character stream that handles all the necessary Voodoo to figure out the charset encoding of the XML document written to the stream.
    Since:
    2.0
    See Also:
    XmlStreamReader
    • Constructor Summary

      Constructors 
      Constructor Description
      XmlStreamWriter​(java.io.File file)
      Constructs a new XML stream writer for the specified file with a default encoding of UTF-8.
      XmlStreamWriter​(java.io.File file, java.lang.String defaultEncoding)
      Constructs a new XML stream writer for the specified file with the specified default encoding.
      XmlStreamWriter​(java.io.OutputStream out)
      Constructs a new XML stream writer for the specified output stream with a default encoding of UTF-8.
      XmlStreamWriter​(java.io.OutputStream out, java.lang.String defaultEncoding)
      Constructs a new XML stream writer for the specified output stream with the specified default encoding.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void close()
      Closes the underlying writer.
      void flush()
      Flushes the underlying writer.
      java.lang.String getDefaultEncoding()
      Returns the default encoding.
      java.lang.String getEncoding()
      Returns the detected encoding.
      void write​(char[] cbuf, int off, int len)
      Writes the characters to the underlying writer, detecting encoding.
      • Methods inherited from class java.io.Writer

        append, append, append, nullWriter, write, write, write, write
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • XmlStreamWriter

        public XmlStreamWriter​(java.io.OutputStream out)
        Constructs a new XML stream writer for the specified output stream with a default encoding of UTF-8.
        Parameters:
        out - The output stream
      • XmlStreamWriter

        public XmlStreamWriter​(java.io.OutputStream out,
                               java.lang.String defaultEncoding)
        Constructs a new XML stream writer for the specified output stream with the specified default encoding.
        Parameters:
        out - The output stream
        defaultEncoding - The default encoding if not encoding could be detected
      • XmlStreamWriter

        public XmlStreamWriter​(java.io.File file)
                        throws java.io.FileNotFoundException
        Constructs a new XML stream writer for the specified file with a default encoding of UTF-8.
        Parameters:
        file - The file to write to
        Throws:
        java.io.FileNotFoundException - if there is an error creating or opening the file
      • XmlStreamWriter

        public XmlStreamWriter​(java.io.File file,
                               java.lang.String defaultEncoding)
                        throws java.io.FileNotFoundException
        Constructs a new XML stream writer for the specified file with the specified default encoding.
        Parameters:
        file - The file to write to
        defaultEncoding - The default encoding if not encoding could be detected
        Throws:
        java.io.FileNotFoundException - if there is an error creating or opening the file
    • Method Detail

      • getEncoding

        public java.lang.String getEncoding()
        Returns the detected encoding.
        Returns:
        the detected encoding
      • getDefaultEncoding

        public java.lang.String getDefaultEncoding()
        Returns the default encoding.
        Returns:
        the default encoding
      • close

        public void close()
                   throws java.io.IOException
        Closes the underlying writer.
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in interface java.io.Closeable
        Specified by:
        close in class java.io.Writer
        Throws:
        java.io.IOException - if an error occurs closing the underlying writer
      • flush

        public void flush()
                   throws java.io.IOException
        Flushes the underlying writer.
        Specified by:
        flush in interface java.io.Flushable
        Specified by:
        flush in class java.io.Writer
        Throws:
        java.io.IOException - if an error occurs flushing the underlying writer
      • write

        public void write​(char[] cbuf,
                          int off,
                          int len)
                   throws java.io.IOException
        Writes the characters to the underlying writer, detecting encoding.
        Specified by:
        write in class java.io.Writer
        Parameters:
        cbuf - the buffer to write the characters from
        off - The start offset
        len - The number of characters to write
        Throws:
        java.io.IOException - if an error occurs detecting the encoding