public class CoderOutputStream
extends java.io.FilterOutputStream
To specify the Coder object that is used by the output stream to encode or decode the data, use the setCoder() method.
After filling a buffer of block size, the Coder object is used to encode or decode the buffer. The setMode() method is used to specify encoding or decoding mode (the default mode is encode.)
An IOException is thrown if there is not enough data to fill the buffer.
Modifier and Type | Field and Description |
---|---|
protected byte[] |
buf
The buffer which stores the data.
|
protected Coder |
coder
The Coder used by this stream.
|
protected int |
count
The number of bytes in the buffer.
|
static int |
DECODE_MODE
The DECODE mode.
|
static int |
ENCODE_MODE
The ENCODE mode.
|
protected int |
mode
The current mode.
|
Constructor and Description |
---|
CoderOutputStream(java.io.OutputStream os, Coder c)
Create a new CoderOutputStream with the buffer size equal to the Coder block size.
|
Modifier and Type | Method and Description |
---|---|
void |
flush()
Flushes the stream, by writing any buffered output bytes.
|
Coder |
getCoder()
Get the Coder used in this stream.
|
int |
getMode()
Get the current mode.
|
void |
setMode(int m)
Set the mode of the stream.
|
void |
write(byte[] b, int off, int len)
Write a sub array of bytes.
|
void |
write(int b)
Write one byte of data.
|
public static final int DECODE_MODE
public static final int ENCODE_MODE
protected int mode
protected Coder coder
protected byte[] buf
protected int count
public CoderOutputStream(java.io.OutputStream os, Coder c)
public Coder getCoder()
public int getMode()
public void setMode(int m)
public void write(int b) throws java.io.IOException
write
in class java.io.FilterOutputStream
java.io.IOException
public void write(byte[] b, int off, int len) throws java.io.IOException
write
in class java.io.FilterOutputStream
b
- the data to be writtenoff
- start offset of datalen
- number of bytes to writejava.io.IOException
public void flush() throws java.io.IOException
flush
in interface java.io.Flushable
flush
in class java.io.FilterOutputStream
java.io.IOException