Documentation of 'javolution37.javolution.io.Utf8StreamWriter' Java class
Utf8StreamWriter
javolution37.javolution.io

Class Utf8StreamWriter

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


    public final class Utf8StreamWriter
    extends java.io.Writer
    implements Reusable

    This class represents a UTF-8 stream writer.

    This writer supports surrogate char pairs (representing characters in the range [U+10000 .. U+10FFFF]). It can also be used to write characters from their unicodes (31 bits) directly (ref. write(int)).

    Instances of this class can be reused for different output streams and can be part of a higher level component (e.g. serializer) in order to avoid dynamic buffer allocation when the destination output changes. Also wrapping using a java.io.BufferedWriter is unnescessary as instances of this class embed their own data buffers.

    Note: This writer is unsynchronized and always produces well-formed UTF-8 sequences.

    • Constructor Summary

      Constructors 
      Constructor and 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

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method and Description
      void close()
      Closes and resets this writer for reuse.
      void flush()
      Flushes the stream.
      void reset()
      Resets the internal state of this object to its default values.
      Utf8StreamWriter setOutputStream(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(java.lang.CharSequence csq)
      Writes the specified character sequence.
      void write(int code)
      Writes a character given its 31-bits Unicode.
      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, write, write
      • Methods inherited from class java.lang.Object

        equals, 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

      • setOutputStream

        public Utf8StreamWriter setOutputStream(java.io.OutputStream out)
        Sets the output stream to use for writing until this writer is closed. For example:
             Writer writer = new Utf8StreamWriter().setOutputStream(out);
         
        is equivalent but writes faster than
             Writer writer = new java.io.OutputStreamWriter(out, "UTF-8");
         
        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.io.Closeable
        Specified by:
        close in interface java.lang.AutoCloseable
        Specified by:
        close in class java.io.Writer
        Throws:
        java.io.IOException - if an I/O error occurs
      • reset

        public void reset()
        Description copied from interface: Reusable
        Resets the internal state of this object to its default values.
        Specified by:
        reset in interface Reusable

DMelt 3.0 © DataMelt by jWork.ORG

You see the box below because you did not login.