Class ByteArrayOutputStream

java.lang.Object
java.io.OutputStream
java.io.ByteArrayOutputStream
All Implemented Interfaces:
AutoCloseable

public class ByteArrayOutputStream extends OutputStream
This class implements an output stream in which the data is written into a byte array. The buffer automatically grows as data is written to it. The data can be retrieved using toByteArray() and toString(). Since: JDK1.0, CLDC 1.0
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected byte[]
    The buffer where data is stored.
    protected int
    The number of valid bytes in the buffer.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Creates a new byte array output stream.
    Creates a new byte array output stream, with a buffer capacity of the specified size, in bytes.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    Closes this output stream and releases any system resources associated with this stream.
    void
    Resets the count field of this byte array output stream to zero, so that all currently accumulated output in the output stream is discarded.
    int
    Returns the current size of the buffer.
    byte[]
    Creates a newly allocated byte array.
    Converts the buffer's contents into a string, translating bytes into characters according to the platform's default character encoding.
    void
    write(byte[] b, int off, int len)
    Writes len bytes from the specified byte array starting at offset off to this byte array output stream.
    void
    write(int b)
    Writes the specified byte to this byte array output stream.

    Methods inherited from class OutputStream

    flush, write
    Modifier and Type
    Method
    Description
    void
    Flushes this output stream and forces any buffered output bytes to be written out.
    void
    write(byte[] b)
    Writes b.length bytes from the specified byte array to this output stream.

    Methods inherited from class Object

    clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected Object
     
    boolean
    Indicates whether some other object is "equal to" this one.
    final Class
    Returns the runtime class of an object.
    int
    Returns a hash code value for the object.
    final void
    Wakes up a single thread that is waiting on this object's monitor.
    final void
    Wakes up all threads that are waiting on this object's monitor.
    final void
    Causes current thread to wait until another thread invokes the method or the method for this object.
    final void
    wait(long timeout)
    Causes current thread to wait until either another thread invokes the method or the method for this object, or a specified amount of time has elapsed.
    final void
    wait(long timeout, int nanos)
    Causes current thread to wait until another thread invokes the method or the method for this object, or some other thread interrupts the current thread, or a certain amount of real time has elapsed.
  • Field Details

    • buf

      protected byte[] buf
      The buffer where data is stored.
    • count

      protected int count
      The number of valid bytes in the buffer.
  • Constructor Details

    • ByteArrayOutputStream

      public ByteArrayOutputStream()
      Creates a new byte array output stream. The buffer capacity is initially 32 bytes, though its size increases if necessary.
    • ByteArrayOutputStream

      public ByteArrayOutputStream(int size)
      Creates a new byte array output stream, with a buffer capacity of the specified size, in bytes. size - the initial size. - if size is negative.
  • Method Details

    • close

      public void close() throws IOException
      Closes this output stream and releases any system resources associated with this stream. A closed stream cannot perform output operations and cannot be reopened.
      Specified by:
      close in interface AutoCloseable
      Overrides:
      close in class OutputStream
      Throws:
      IOException
    • reset

      public void reset()
      Resets the count field of this byte array output stream to zero, so that all currently accumulated output in the output stream is discarded. The output stream can be used again, reusing the already allocated buffer space.
    • size

      public int size()
      Returns the current size of the buffer.
    • toByteArray

      public byte[] toByteArray()
      Creates a newly allocated byte array. Its size is the current size of this output stream and the valid contents of the buffer have been copied into it.
    • toString

      public String toString()
      Converts the buffer's contents into a string, translating bytes into characters according to the platform's default character encoding.
      Overrides:
      toString in class Object
    • write

      public void write(byte[] b, int off, int len)
      Writes len bytes from the specified byte array starting at offset off to this byte array output stream.
      Overrides:
      write in class OutputStream
    • write

      public void write(int b)
      Writes the specified byte to this byte array output stream.
      Specified by:
      write in class OutputStream