public abstract class CharSource extends Object
Reader, a
CharSource is not an open, stateful stream of characters that can be read and closed.
Instead, it is an immutable supplier of InputStream instances.
CharSource provides two kinds of methods:
Several methods in this class, such as readLines(), break the contents of the
source into lines. Like BufferedReader, these methods break lines on any of \n,
\r or \r\n, do not include the line separator in each line and do not consider
there to be an empty line at the end if the contents are terminated with a line separator.
Any ByteSource containing text encoded with a specific character
encoding may be viewed as a CharSource using ByteSource.asCharSource(Charset).
| Constructor and Description |
|---|
CharSource() |
| Modifier and Type | Method and Description |
|---|---|
long |
copyTo(Appendable appendable)
Appends the contents of this source to the given
Appendable (such as a Writer). |
long |
copyTo(CharSink sink)
Copies the contents of this source to the given sink.
|
BufferedReader |
openBufferedStream()
Opens a new
BufferedReader for reading from this source. |
abstract Reader |
openStream()
Opens a new
Reader for reading from this source. |
String |
read()
Reads the contents of this source as a string.
|
String |
readFirstLine()
Reads the first link of this source as a string.
|
ImmutableList<String> |
readLines()
Reads all the lines of this source as a list of strings.
|
public CharSource()
public abstract Reader openStream() throws IOException
Reader for reading from this source. This method should return a new,
independent reader each time it is called.
The caller is responsible for ensuring that the returned reader is closed.
IOException - if an I/O error occurs in the process of opening the readerpublic BufferedReader openBufferedStream() throws IOException
BufferedReader for reading from this source. This method should return a
new, independent reader each time it is called.
The caller is responsible for ensuring that the returned reader is closed.
IOException - if an I/O error occurs in the process of opening the readerpublic long copyTo(Appendable appendable) throws IOException
Appendable (such as a Writer).
Does not close appendable if it is Closeable.IOException - if an I/O error occurs in the process of reading from this source or
writing to appendablepublic long copyTo(CharSink sink) throws IOException
IOException - if an I/O error occurs in the process of reading from this source or
writing to sinkpublic String read() throws IOException
IOException - if an I/O error occurs in the process of reading from this source@Nullable public String readFirstLine() throws IOException
null if this source is empty.
Like BufferedReader, this method breaks lines on any of \n, \r or
\r\n, does not include the line separator in the returned line and does not consider
there to be an extra empty line at the end if the content is terminated with a line separator.
IOException - if an I/O error occurs in the process of reading from this sourcepublic ImmutableList<String> readLines() throws IOException
Like BufferedReader, this method breaks lines on any of \n, \r or
\r\n, does not include the line separator in the returned lines and does not consider
there to be an extra empty line at the end if the content is terminated with a line separator.
IOException - if an I/O error occurs in the process of reading from this sourceCopyright © 2010-2013. All Rights Reserved.