java.lang.Object
java.io.Writer
com.aoapps.io.buffer.BufferWriter
com.aoapps.io.buffer.CharArrayBufferWriter
- All Implemented Interfaces:
Closeable
,Flushable
,Appendable
,AutoCloseable
Writes to a set of internally managed buffers. When possible, the buffers are reused.
Maximum length is 2 ^ 30 characters (about 1 billion).
When this limit is insufficient, consider using along with
AutoTempFileWriter
.
This class is not thread safe.
- Author:
- AO Industries, Inc.
- See Also:
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionappend
(char c) append
(CharSequence csq) append
(CharSequence csq, int start, int end) void
close()
void
flush()
long
Gets the number of characters in this buffer.Gets the result from this buffer.toString()
Gets a short message (like type and length).void
write
(char[] cbuf, int off, int len) void
write
(int c) void
Methods inherited from class java.io.Writer
nullWriter, write, write
-
Constructor Details
-
CharArrayBufferWriter
public CharArrayBufferWriter()
-
-
Method Details
-
write
- Overrides:
write
in classWriter
- Throws:
IOException
-
write
- Specified by:
write
in classWriter
- Throws:
IOException
-
write
- Overrides:
write
in classWriter
- Throws:
IOException
-
append
- Specified by:
append
in interfaceAppendable
- Overrides:
append
in classWriter
- Throws:
IOException
-
append
- Specified by:
append
in interfaceAppendable
- Overrides:
append
in classWriter
- Throws:
IOException
-
append
- Specified by:
append
in interfaceAppendable
- Overrides:
append
in classWriter
- Throws:
IOException
-
flush
- Specified by:
flush
in interfaceFlushable
- Specified by:
flush
in classWriter
- Throws:
IOException
-
close
public void close() -
getLength
public long getLength()Description copied from class:BufferWriter
Gets the number of characters in this buffer. Once closed, this length will not be modified.- Specified by:
getLength
in classBufferWriter
-
toString
Description copied from class:BufferWriter
Gets a short message (like type and length).- Specified by:
toString
in classBufferWriter
- See Also:
-
getResult
Description copied from class:BufferWriter
Gets the result from this buffer. The buffer must be closed.Note: Although the
BufferWriter
are generally not thread-safe, theBufferResult
is thread-safe. It is expected to commonly create a buffer on one thread, but the be able to safely share the result among many threads.- Specified by:
getResult
in classBufferWriter
- Throws:
IllegalStateException
- if not closed
-