Package org.json

Class StringBuilderWriter

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

    public class StringBuilderWriter
    extends java.io.Writer
    Performance optimised alternative for StringWriter using internally a StringBuilder instead of a StringBuffer.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private java.lang.StringBuilder builder  
      • Fields inherited from class java.io.Writer

        lock
    • Constructor Summary

      Constructors 
      Constructor Description
      StringBuilderWriter()
      Create a new string builder writer using the default initial string-builder buffer size.
      StringBuilderWriter​(int initialSize)
      Create a new string builder writer using the specified initial string-builder buffer size.
    • Field Detail

      • builder

        private final java.lang.StringBuilder builder
    • Constructor Detail

      • StringBuilderWriter

        public StringBuilderWriter()
        Create a new string builder writer using the default initial string-builder buffer size.
      • StringBuilderWriter

        public StringBuilderWriter​(int initialSize)
        Create a new string builder writer using the specified initial string-builder buffer size.
        Parameters:
        initialSize - The number of char values that will fit into this buffer before it is automatically expanded
        Throws:
        java.lang.IllegalArgumentException - If initialSize is negative
    • Method Detail

      • write

        public void write​(int c)
        Overrides:
        write in class java.io.Writer
      • write

        public void write​(char[] cbuf,
                          int offset,
                          int length)
        Specified by:
        write in class java.io.Writer
      • write

        public void write​(java.lang.String str)
        Overrides:
        write in class java.io.Writer
      • write

        public void write​(java.lang.String str,
                          int offset,
                          int length)
        Overrides:
        write in class java.io.Writer
      • append

        public StringBuilderWriter append​(java.lang.CharSequence csq)
        Specified by:
        append in interface java.lang.Appendable
        Overrides:
        append in class java.io.Writer
      • append

        public StringBuilderWriter append​(java.lang.CharSequence csq,
                                          int start,
                                          int end)
        Specified by:
        append in interface java.lang.Appendable
        Overrides:
        append in class java.io.Writer
      • append

        public StringBuilderWriter append​(char c)
        Specified by:
        append in interface java.lang.Appendable
        Overrides:
        append in class java.io.Writer
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object
      • flush

        public void flush()
        Specified by:
        flush in interface java.io.Flushable
        Specified by:
        flush in class java.io.Writer
      • close

        public void close()
                   throws java.io.IOException
        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