Client and backend. This class is shared: the same code is compiled into your app and into your server, so everything on this page works in both.

public class BufferedOutputStream

  1. Object
  2. OutputStream
  3. FilterOutputStream
  4. BufferedOutputStream

ImplementsAutoCloseable, Closeable, Flushable

Writes to another stream through a buffer, so that many small writes become few large ones.

Fields

protected byte[] bufThe buffer.
protected int countHow many bytes of buf are waiting to be written.

Constructors

public BufferedOutputStream(OutputStream out)Buffers out with an 8192 byte buffer.
public BufferedOutputStream(OutputStream out, int size)Buffers out with a buffer of size bytes.

Methods

public void write(int b) throws IOExceptionWrites the specified byte to this output stream.
public void write(byte[] b, int off, int len) throws IOExceptionWrites len bytes from the specified byte array starting at offset off to this output stream.
public void flush() throws IOExceptionFlushes this output stream and forces any buffered output bytes to be written out.
public void close() throws IOExceptionCloses this output stream and releases any system resources associated with this stream.

Inherited fields

Inherited methods

Field details

buf

protected byte[] buf
The buffer.

count

protected int count
How many bytes of buf are waiting to be written.

Constructor details

BufferedOutputStream

public BufferedOutputStream(OutputStream out)
Buffers out with an 8192 byte buffer.

BufferedOutputStream

public BufferedOutputStream(OutputStream out, int size)
Buffers out with a buffer of size bytes.

Throws

IllegalArgumentException
when size is not positive

Method details

write

public void write(int b) throws IOException
Writes the specified byte to this output stream. The general contract for write is that one byte is written to the output stream. The byte to be written is the eight low-order bits of the argument b. The 24 high-order bits of b are ignored. Subclasses of OutputStream must provide an implementation for this method.

write

public void write(byte[] b, int off, int len) throws IOException
Writes len bytes from the specified byte array starting at offset off to this output stream. The general contract for write(b, off, len) is that some of the bytes in the array b are written to the output stream in order; element b[off] is the first byte written and b[off+len-1] is the last byte written by this operation. The write method of OutputStream calls the write method of one argument on each of the bytes to be written out. Subclasses are encouraged to override this method and provide a more efficient implementation. If b is null, a NullPointerException is thrown. If off is negative, or len is negative, or off+len is greater than the length of the array b, then an IndexOutOfBoundsException is thrown.

flush

public void flush() throws IOException
Flushes this output stream and forces any buffered output bytes to be written out. The general contract of flush is that calling it is an indication that, if any bytes previously written have been buffered by the implementation of the output stream, such bytes should immediately be written to their intended destination. The flush method of OutputStream does nothing.

Throws

IOException
if there are any issues writing the data.

close

public void close() throws IOException
Closes this output stream and releases any system resources associated with this stream. The general contract of close is that it closes the output stream. A closed stream cannot perform output operations and cannot be reopened. The close method of OutputStream does nothing.