org.apache.axis.utils
public class ByteArrayOutputStream extends OutputStream
toByteArray()
and
toString()
.
Closing a ByteArrayOutputStream has no effect. The methods in
this class can be called after the stream has been closed without
generating an IOException.
This is an alternative implementation of the java.io.ByteArrayOutputStream
class. The original implementation only allocates 32 bytes at the beginning.
As this class is designed for heavy duty it starts at 1024 bytes. In contrast
to the original it doesn't reallocate the whole memory block but allocates
additional buffers. This way no buffers need to be garbage collected and
the contents don't have to be copied to the new buffer. This class is
designed to behave exactly like the original. The only exception is the
deprecated toString(int) method that has been ignored.
Constructor Summary | |
---|---|
ByteArrayOutputStream()
Creates a new byte array output stream. | |
ByteArrayOutputStream(int size)
Creates a new byte array output stream, with a buffer capacity of
the specified size, in bytes.
|
Method Summary | |
---|---|
void | close()
Closing a ByteArrayOutputStream has no effect. |
void | reset() |
int | size() |
byte[] | toByteArray() |
String | toString() |
String | toString(String enc) |
void | write(byte[] b, int off, int len) |
void | write(int b)
Calls the write(byte[]) method.
|
void | writeTo(OutputStream out) |
Parameters: size the initial size.
Throws: IllegalArgumentException if size is negative.
Throws: IOException in case an I/O error occurs
See Also: java.io.ByteArrayOutputStream#reset()
See Also: java.io.ByteArrayOutputStream#size()
See Also: java.io.ByteArrayOutputStream#toByteArray()
See Also: java.io.ByteArrayOutputStream#toString()
See Also: java.io.ByteArrayOutputStream#toString(String)
See Also: java.io.OutputStream#write(byte[], int, int)
See Also: java.io.OutputStream#write(int)
See Also: java.io.ByteArrayOutputStream#writeTo(OutputStream)