Class RtfByteArrayBuffer
- java.lang.Object
-
- java.io.OutputStream
-
- com.lowagie.text.rtf.document.output.RtfByteArrayBuffer
-
- All Implemented Interfaces:
java.io.Closeable,java.io.Flushable,java.lang.AutoCloseable
public final class RtfByteArrayBuffer extends java.io.OutputStreamA RtfByteArrayBuffer works much likeByteArrayOutputStreambut is cheaper and faster in most cases (exception: large writes when reusing buffers).- Version:
- $Id: RtfByteArrayBuffer.java 4065 2009-09-16 23:09:11Z psoares33 $
- Author:
- Thomas Bickel (tmb99@inode.at)
-
-
Constructor Summary
Constructors Constructor Description RtfByteArrayBuffer()Constructs a new buffer with a default initial size of 128 bytes.RtfByteArrayBuffer(int bufferSize)Creates a new buffer with the given initial size.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidappend(byte[] a)Appends the given array to this buffer without copying (if possible).voidappend(byte[][] a)Appends all arrays to this buffer without copying (if possible).voidreset()Resets this buffer.longsize()Returns the number of bytes that have been written to this buffer so far.byte[]toByteArray()Allocates a new array and copies all data that has been written to this buffer to the newly allocated array.byte[][]toByteArrayArray()Returns the internal list of byte array buffers without copying the buffer contents.java.lang.StringtoString()voidwrite(byte[] src)Copies the given array to the internal buffer.voidwrite(byte[] src, int off, int len)Copies len bytes starting at position off from the array src to the internal buffer.voidwrite(int b)Copies the given byte to the internal buffer.longwrite(java.io.InputStream in)Writes all bytes available in the given inputstream to this buffer.voidwriteTo(java.io.OutputStream out)Writes all data that has been written to this buffer to the given output stream.
-
-
-
Method Detail
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
reset
public void reset()
Resets this buffer.
-
size
public long size()
Returns the number of bytes that have been written to this buffer so far.- Returns:
- number of bytes written to this buffer
-
write
public void write(int b)
Copies the given byte to the internal buffer.- Specified by:
writein classjava.io.OutputStream- Parameters:
b-
-
write
public void write(byte[] src)
Copies the given array to the internal buffer.- Overrides:
writein classjava.io.OutputStream- Parameters:
src-
-
write
public void write(byte[] src, int off, int len)Copies len bytes starting at position off from the array src to the internal buffer.- Overrides:
writein classjava.io.OutputStream- Parameters:
src-off-len-
-
write
public long write(java.io.InputStream in) throws java.io.IOExceptionWrites all bytes available in the given inputstream to this buffer.- Parameters:
in-- Returns:
- number of bytes written
- Throws:
java.io.IOException
-
append
public void append(byte[] a)
Appends the given array to this buffer without copying (if possible).- Parameters:
a-
-
append
public void append(byte[][] a)
Appends all arrays to this buffer without copying (if possible).- Parameters:
a-
-
toByteArrayArray
public byte[][] toByteArrayArray()
Returns the internal list of byte array buffers without copying the buffer contents.- Returns:
- number of bytes written
-
toByteArray
public byte[] toByteArray()
Allocates a new array and copies all data that has been written to this buffer to the newly allocated array.- Returns:
- a new byte array
-
writeTo
public void writeTo(java.io.OutputStream out) throws java.io.IOExceptionWrites all data that has been written to this buffer to the given output stream.- Parameters:
out-- Throws:
java.io.IOException
-
-