Class StringBufferWriter

  • All Implemented Interfaces:
    Closeable, Flushable, Appendable, AutoCloseable

    public class StringBufferWriter
    extends Writer
    This class codes around a silly limitation of StringWriter which doesn't allow a StringBuffer to be passed in as a constructor for some bizarre reason. So we replicate the behaviour of StringWriter here but allow a StringBuffer to be passed in.
    • Constructor Detail

      • StringBufferWriter

        public StringBufferWriter​(StringBuffer buffer)
        Create a new string writer which will append the text to the given StringBuffer
    • Method Detail

      • write

        public void write​(int c)
        Write a single character.
        Overrides:
        write in class Writer
      • write

        public void write​(char[] text,
                          int offset,
                          int length)
        Write a portion of an array of characters.
        Specified by:
        write in class Writer
        Parameters:
        text - Array of characters
        offset - Offset from which to start writing characters
        length - Number of characters to write
      • write

        public void write​(String text)
        Write a string.
        Overrides:
        write in class Writer
      • write

        public void write​(String text,
                          int offset,
                          int length)
        Write a portion of a string.
        Overrides:
        write in class Writer
        Parameters:
        text - the text to be written
        offset - offset from which to start writing characters
        length - Number of characters to write
      • toString

        public String toString()
        Return the buffer's current value as a string.
        Overrides:
        toString in class Object
      • flush

        public void flush()
        Flush the stream.
        Specified by:
        flush in interface Flushable
        Specified by:
        flush in class Writer
      • close

        public void close()
                   throws IOException
        Closing a StringWriter has no effect. The methods in this class can be called after the stream has been closed without generating an IOException.
        Specified by:
        close in interface AutoCloseable
        Specified by:
        close in interface Closeable
        Specified by:
        close in class Writer
        Throws:
        IOException