Class XmlStreamWriter

java.lang.Object
java.io.Writer
org.apache.commons.io.output.XmlStreamWriter
All Implemented Interfaces:
Closeable, Flushable, Appendable, AutoCloseable

public class XmlStreamWriter extends 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:
  • Constructor Details

    • XmlStreamWriter

      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(OutputStream out, 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

      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:
      FileNotFoundException - if there is an error creating or opening the file
    • XmlStreamWriter

      public XmlStreamWriter(File file, String defaultEncoding) throws 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:
      FileNotFoundException - if there is an error creating or opening the file
  • Method Details

    • getEncoding

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

      Returns the default encoding.
      Returns:
      the default encoding
    • close

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

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

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