public abstract class CharSink extends Object
Writer, a
CharSink is not an open, stateful stream that can be written to and closed. Instead, it is an immutable
supplier of
Writer instances.
CharSink provides two kinds of methods:
Any ByteSink may be viewed as a CharSink with a specific character encoding using ByteSink. Characters written to the resulting CharSink will written to the ByteSink as encoded bytes.
| Modifier | Constructor and Description |
|---|---|
protected |
CharSink()
Constructor for use by subclasses.
|
| Modifier and Type | Method and Description |
|---|---|
Writer |
openBufferedStream()
Opens a new buffered
Writer for writing to this sink.
|
abstract Writer |
openStream()
Opens a new
Writer for writing to this sink.
|
void |
write(CharSequence
Writes the given character sequence to this sink.
|
long |
writeFrom(Readable
|
void |
writeLines(Iterable
Writes the given lines of text to this sink with each line (including the last) terminated with the operating system's default line separator.
|
void |
writeLines(Iterable
Writes the given lines of text to this sink with each line (including the last) terminated with the given line separator.
|
public abstract WriteropenStream() throws IOException
Writer for writing to this sink. This method should return a new, independent writer each time it is called.
The caller is responsible for ensuring that the returned writer is closed.
IOException - if an I/O error occurs in the process of opening the writer
public WriteropenBufferedStream() throws IOException
Writer for writing to this sink. The returned stream is not required to be a
BufferedWriter in order to allow implementations to simply delegate to
openStream() when the stream returned by that method does not benefit from additional buffering. This method should return a new, independent writer each time it is called.
The caller is responsible for ensuring that the returned writer is closed.
IOException - if an I/O error occurs in the process of opening the writer
BufferedWriter)
public void write(CharSequencecharSequence) throws IOException
IOException - if an I/O error in the process of writing to this sink
public void writeLines(Iterable<? extends CharSequence > lines) throws IOException
writeLines(lines, System.getProperty("line.separator")).
IOException - if an I/O error occurs in the process of writing to this sink
public void writeLines(Iterable<? extends CharSequence > lines, String lineSeparator) throws IOException
IOException - if an I/O error occurs in the process of writing to this sink
public long writeFrom(Readablereadable) throws IOException
Readable (such as a
Reader) to this sink. Does not close
readable if it is
Closeable.
IOException - if an I/O error occurs in the process of reading from
readable or writing to this sink