public class BufferedOutputStream extends FilterOutputStream
BufferedOutputStream
class. This implementation differs in that it does not mark methods as synchronized. This means that this class is
not suitable for writing by multiple concurrent threads. However, the removal of the synchronized keyword results in potentially much better performance.Modifier and Type | Field and Description |
---|---|
protected byte[] |
buf
The internal buffer where data is stored.
|
protected int |
count
The number of valid bytes in the buffer.
|
out
Constructor and Description |
---|
BufferedOutputStream(OutputStream out)
Creates a new buffered output stream to write data to the specified underlying output stream.
|
BufferedOutputStream(OutputStream out,
int size)
Creates a new buffered output stream to write data to the specified underlying output stream with the specified buffer size.
|
Modifier and Type | Method and Description |
---|---|
void |
flush()
Flushes this buffered output stream.
|
private void |
flushBuffer()
Flush the internal buffer
|
void |
write(byte[] b,
int off,
int len)
Writes
len bytes from the specified byte array starting at offset off to this buffered output stream. |
void |
write(int b)
Writes the specified byte to this buffered output stream.
|
close, write
protected byte[] buf
protected int count
public BufferedOutputStream(OutputStream out)
out
- the underlying output stream.public BufferedOutputStream(OutputStream out, int size)
out
- the underlying output stream.size
- the buffer size.IllegalArgumentException
- if size <= 0.private void flushBuffer() throws IOException
IOException
public void write(int b) throws IOException
write
in class FilterOutputStream
b
- the byte to be written.IOException
- if an I/O error occurs.public void write(byte[] b, int off, int len) throws IOException
len
bytes from the specified byte array starting at offset off
to this buffered output stream.
Ordinarily this method stores bytes from the given array into this stream's buffer, flushing the buffer to the underlying output stream as needed. If the requested length is at least as large
as this stream's buffer, however, then this method will flush the buffer and write the bytes directly to the underlying output stream. Thus redundant BufferedOutputStream
s will not
copy data unnecessarily.
write
in class FilterOutputStream
b
- the data.off
- the start offset in the data.len
- the number of bytes to write.IOException
- if an I/O error occurs.public void flush() throws IOException
flush
in interface Flushable
flush
in class FilterOutputStream
IOException
- if an I/O error occurs.FilterOutputStream.out
Copyright © 2016 Apache NiFi Project. All rights reserved.