Class StringBuilderWriter

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

    public class StringBuilderWriter
    extends Writer
    implements Serializable
    Writer implementation that outputs to a StringBuilder.

    NOTE: This implementation, as an alternative to java.io.StringWriter, provides an un-synchronized (i.e. for use in a single thread) implementation for better performance. For safe usage with multiple Threads then java.io.StringWriter should be used.

    History

    1. Copied from Apache Commons IO revision 1681000.
    2. Pick up Javadoc updates from revision 1722253.
      See Also:
      Serialized Form
      • Constructor Detail

        • StringBuilderWriter

          public StringBuilderWriter()
          Constructs a new StringBuilder instance with default capacity.
        • StringBuilderWriter

          public StringBuilderWriter​(int capacity)
          Constructs a new StringBuilder instance with the specified capacity.
          Parameters:
          capacity - The initial capacity of the underlying StringBuilder
        • StringBuilderWriter

          public StringBuilderWriter​(StringBuilder builder)
          Constructs a new instance with the specified StringBuilder.

          If builder is null a new instance with default capacity will be created.

          Parameters:
          builder - The String builder. May be null.
      • Method Detail

        • append

          public Writer append​(char value)
          Appends a single character to this Writer.
          Specified by:
          append in interface Appendable
          Overrides:
          append in class Writer
          Parameters:
          value - The character to append
          Returns:
          This writer instance
        • append

          public Writer append​(CharSequence value)
          Appends a character sequence to this Writer.
          Specified by:
          append in interface Appendable
          Overrides:
          append in class Writer
          Parameters:
          value - The character to append
          Returns:
          This writer instance
        • append

          public Writer append​(CharSequence value,
                               int start,
                               int end)
          Appends a portion of a character sequence to the StringBuilder.
          Specified by:
          append in interface Appendable
          Overrides:
          append in class Writer
          Parameters:
          value - The character to append
          start - The index of the first character
          end - The index of the last character + 1
          Returns:
          This writer instance
        • flush

          public void flush()
          Flushing this writer has no effect.
          Specified by:
          flush in interface Flushable
          Specified by:
          flush in class Writer
        • write

          public void write​(String value)
          Writes a String to the StringBuilder.
          Overrides:
          write in class Writer
          Parameters:
          value - The value to write
        • write

          public void write​(char[] value,
                            int offset,
                            int length)
          Writes a portion of a character array to the StringBuilder.
          Specified by:
          write in class Writer
          Parameters:
          value - The value to write
          offset - The index of the first character
          length - The number of characters to write
        • getBuilder

          public StringBuilder getBuilder()
          Returns the underlying builder.
          Returns:
          The underlying builder