Class UTF8StreamWriter

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

    public final class UTF8StreamWriter
    extends java.io.Writer
    • Field Summary

      • Fields inherited from class java.io.Writer

        lock
    • Constructor Summary

      Constructors 
      Constructor Description
      UTF8StreamWriter()
      Creates a UTF-8 writer having a byte buffer of moderate capacity (2048).
      UTF8StreamWriter​(int capacity)
      Creates a UTF-8 writer having a byte buffer of specified capacity.
    • Method Summary

      Modifier and Type Method Description
      void close()
      Closes and resets this writer for reuse.
      void flush()
      Flushes the stream.
      void reset()  
      UTF8StreamWriter setOutput​(java.io.OutputStream out)
      Sets the output stream to use for writing until this writer is closed.
      void write​(char c)
      Writes a single character.
      void write​(char[] cbuf, int off, int len)
      Writes a portion of an array of characters.
      void write​(int code)
      Writes a character given its 31-bits Unicode.
      void write​(java.lang.CharSequence csq)
      Writes the specified character sequence.
      void write​(java.lang.String str, int off, int len)
      Writes a portion of a string.
      • Methods inherited from class java.io.Writer

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

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

      • UTF8StreamWriter

        public UTF8StreamWriter()
        Creates a UTF-8 writer having a byte buffer of moderate capacity (2048).
      • UTF8StreamWriter

        public UTF8StreamWriter​(int capacity)
        Creates a UTF-8 writer having a byte buffer of specified capacity.
        Parameters:
        capacity - the capacity of the byte buffer.
    • Method Detail

      • setOutput

        public UTF8StreamWriter setOutput​(java.io.OutputStream out)
        Sets the output stream to use for writing until this writer is closed. For example:[code] Writer writer = new UTF8StreamWriter().setOutputStream(out); [/code] is equivalent but writes faster than [code] Writer writer = new java.io.OutputStreamWriter(out, "UTF-8"); [/code]
        Parameters:
        out - the output stream.
        Returns:
        this UTF-8 writer.
        Throws:
        java.lang.IllegalStateException - if this writer is being reused and it has not been closed or reset.
      • write

        public void write​(char c)
                   throws java.io.IOException
        Writes a single character. This method supports 16-bits character surrogates.
        Parameters:
        c - char the character to be written (possibly a surrogate).
        Throws:
        java.io.IOException - if an I/O error occurs.
      • write

        public void write​(int code)
                   throws java.io.IOException
        Writes a character given its 31-bits Unicode.
        Overrides:
        write in class java.io.Writer
        Parameters:
        code - the 31 bits Unicode of the character to be written.
        Throws:
        java.io.IOException - if an I/O error occurs.
      • write

        public void write​(char[] cbuf,
                          int off,
                          int len)
                   throws java.io.IOException
        Writes a portion of an array of characters.
        Specified by:
        write in class java.io.Writer
        Parameters:
        cbuf - the array of characters.
        off - the offset from which to start writing characters.
        len - the number of characters to write.
        Throws:
        java.io.IOException - if an I/O error occurs.
      • write

        public void write​(java.lang.String str,
                          int off,
                          int len)
                   throws java.io.IOException
        Writes a portion of a string.
        Overrides:
        write in class java.io.Writer
        Parameters:
        str - a String.
        off - the offset from which to start writing characters.
        len - the number of characters to write.
        Throws:
        java.io.IOException - if an I/O error occurs
      • write

        public void write​(java.lang.CharSequence csq)
                   throws java.io.IOException
        Writes the specified character sequence.
        Parameters:
        csq - the character sequence.
        Throws:
        java.io.IOException - if an I/O error occurs
      • flush

        public void flush()
                   throws java.io.IOException
        Flushes the stream. If the stream has saved any characters from the various write() methods in a buffer, write them immediately to their intended destination. Then, if that destination is another character or byte stream, flush it. Thus one flush() invocation will flush all the buffers in a chain of Writers and OutputStreams.
        Specified by:
        flush in interface java.io.Flushable
        Specified by:
        flush in class java.io.Writer
        Throws:
        java.io.IOException - if an I/O error occurs.
      • close

        public void close()
                   throws java.io.IOException
        Closes and resets this writer for reuse.
        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 I/O error occurs
      • reset

        public void reset()