@Beta public final class CharStreams extends Object
All method parameters must be non-null unless documented otherwise.
Some of the methods in this class take arguments with a generic type of
Readable & Closeable
. A Reader
implements both of
those interfaces. Similarly for Appendable & Closeable
and
Writer
.
Modifier and Type | Method and Description |
---|---|
static CharSink |
asCharSink(OutputSupplier<? extends Appendable> supplier)
Deprecated.
Convert all
OutputSupplier<? extends Appendable>
implementations to extend CharSink or provide a method for
viewing the object as a CharSink . This method is scheduled
for removal in Guava 18.0. |
static CharSource |
asCharSource(InputSupplier<? extends Readable> supplier)
Deprecated.
Convert all
InputSupplier<? extends Readable>
implementations to extend CharSource or provide a method for
viewing the object as a CharSource . This method is scheduled
for removal in Guava 18.0. |
static Writer |
asWriter(Appendable target)
Returns a Writer that sends all output to the given
Appendable
target. |
static <R extends Readable & Closeable> |
copy(InputSupplier<R> from,
Appendable to)
Deprecated.
Use
CharSource.copyTo(Appendable) instead. This method
is scheduled for removal in Guava 18.0. |
static <R extends Readable & Closeable,W extends Appendable & Closeable> |
copy(InputSupplier<R> from,
OutputSupplier<W> to)
Deprecated.
Use {@link CharSource#copyTo(CharSink) instead. This method is
scheduled for removal in Guava 18.0.
|
static long |
copy(Readable from,
Appendable to)
Copies all characters between the
Readable and Appendable
objects. |
static InputSupplier<Reader> |
join(InputSupplier<? extends Reader>... suppliers)
Deprecated.
Use
CharSource.concat(CharSource[]) instead. This
method is scheduled for removal in Guava 18.0. |
static InputSupplier<Reader> |
join(Iterable<? extends InputSupplier<? extends Reader>> suppliers)
Deprecated.
Use
CharSource.concat(Iterable) instead. This method
is scheduled for removal in Guava 18.0. |
static InputSupplier<InputStreamReader> |
newReaderSupplier(InputSupplier<? extends InputStream> in,
Charset charset)
Deprecated.
Use
ByteSource.asCharSource(Charset) instead. This
method is scheduled for removal in Guava 18.0. |
static InputSupplier<StringReader> |
newReaderSupplier(String value)
Deprecated.
Use
CharSource#wrap(CharSequence } instead. This method
is scheduled for removal in Guava 18.0. |
static OutputSupplier<OutputStreamWriter> |
newWriterSupplier(OutputSupplier<? extends OutputStream> out,
Charset charset)
Deprecated.
Use
ByteSink.asCharSink(Charset) instead. This method
is scheduled for removal in Guava 18.0. |
static Writer |
nullWriter()
Returns a
Writer that simply discards written chars. |
static <R extends Readable & Closeable> |
readFirstLine(InputSupplier<R> supplier)
Deprecated.
Use
CharSource.readFirstLine() instead. This method is
scheduled for removal in Guava 18.0. |
static <R extends Readable & Closeable> |
readLines(InputSupplier<R> supplier)
Deprecated.
Use
CharSource.readLines() instead, but note that it
returns an ImmutableList . This method is scheduled for removal
in Guava 18.0. |
static <R extends Readable & Closeable,T> |
readLines(InputSupplier<R> supplier,
LineProcessor<T> callback)
Deprecated.
Use
CharSource.readLines(LineProcessor) instead. This
method is scheduled for removal in Guava 18.0. |
static List<String> |
readLines(Readable r)
Reads all of the lines from a
Readable object. |
static <T> T |
readLines(Readable readable,
LineProcessor<T> processor)
Streams lines from a
Readable object, stopping when the processor
returns false or all lines have been read and returning the result
produced by the processor. |
static void |
skipFully(Reader reader,
long n)
Discards
n characters of data from the reader. |
static <R extends Readable & Closeable> |
toString(InputSupplier<R> supplier)
Deprecated.
Use
CharSource.read() instead. This method is
scheduled for removal in Guava 18.0. |
static String |
toString(Readable r)
|
static <W extends Appendable & Closeable> |
write(CharSequence from,
OutputSupplier<W> to)
Deprecated.
Use
CharSink.write(CharSequence) instead. This method
is scheduled for removal in Guava 18.0. |
@Deprecated public static InputSupplier<StringReader> newReaderSupplier(String value)
CharSource#wrap(CharSequence
} instead. This method
is scheduled for removal in Guava 18.0.StringReader
that
read a string value.value
- the string to read@Deprecated public static InputSupplier<InputStreamReader> newReaderSupplier(InputSupplier<? extends InputStream> in, Charset charset)
ByteSource.asCharSource(Charset)
instead. This
method is scheduled for removal in Guava 18.0.InputStreamReader
,
using the given InputStream
factory and character set.in
- the factory that will be used to open input streamscharset
- the charset used to decode the input stream; see Charsets
for helpful predefined constants@Deprecated public static OutputSupplier<OutputStreamWriter> newWriterSupplier(OutputSupplier<? extends OutputStream> out, Charset charset)
ByteSink.asCharSink(Charset)
instead. This method
is scheduled for removal in Guava 18.0.OutputStreamWriter
,
using the given OutputStream
factory and character set.out
- the factory that will be used to open output streamscharset
- the charset used to encode the output stream; see Charsets
for helpful predefined constants@Deprecated public static <W extends Appendable & Closeable> void write(CharSequence from, OutputSupplier<W> to) throws IOException
CharSink.write(CharSequence)
instead. This method
is scheduled for removal in Guava 18.0.from
- the character sequence to writeto
- the output supplierIOException
- if an I/O error occurs@Deprecated public static <R extends Readable & Closeable,W extends Appendable & Closeable> long copy(InputSupplier<R> from, OutputSupplier<W> to) throws IOException
Readable
and Appendable
objects from the
given factories, copies all characters between the two, and closes
them.from
- the input factoryto
- the output factoryIOException
- if an I/O error occurs@Deprecated public static <R extends Readable & Closeable> long copy(InputSupplier<R> from, Appendable to) throws IOException
CharSource.copyTo(Appendable)
instead. This method
is scheduled for removal in Guava 18.0.Readable
object from the supplier, copies all characters
to the Appendable
object, and closes the input. Does not close
or flush the output.from
- the input factoryto
- the object to write toIOException
- if an I/O error occurspublic static long copy(Readable from, Appendable to) throws IOException
Readable
and Appendable
objects. Does not close or flush either object.from
- the object to read fromto
- the object to write toIOException
- if an I/O error occurspublic static String toString(Readable r) throws IOException
r
- the object to read fromIOException
- if an I/O error occurs@Deprecated public static <R extends Readable & Closeable> String toString(InputSupplier<R> supplier) throws IOException
CharSource.read()
instead. This method is
scheduled for removal in Guava 18.0.supplier
- the factory to read fromIOException
- if an I/O error occurs@Deprecated public static <R extends Readable & Closeable> String readFirstLine(InputSupplier<R> supplier) throws IOException
CharSource.readFirstLine()
instead. This method is
scheduled for removal in Guava 18.0.Readable
& Closeable
object
supplied by a factory. The line does not include line-termination
characters, but does include other leading and trailing whitespace.supplier
- the factory to read fromIOException
- if an I/O error occurs@Deprecated public static <R extends Readable & Closeable> List<String> readLines(InputSupplier<R> supplier) throws IOException
CharSource.readLines()
instead, but note that it
returns an ImmutableList
. This method is scheduled for removal
in Guava 18.0.Readable
& Closeable
object
supplied by a factory. The lines do not include line-termination
characters, but do include other leading and trailing whitespace.supplier
- the factory to read fromList
containing all the linesIOException
- if an I/O error occurspublic static List<String> readLines(Readable r) throws IOException
Readable
object. The lines do
not include line-termination characters, but do include other
leading and trailing whitespace.
Does not close the Readable
. If reading files or resources you
should use the Files.readLines(java.io.File, java.nio.charset.Charset)
and Resources.readLines(java.net.URL, java.nio.charset.Charset, com.google.common.io.LineProcessor<T>)
methods.
r
- the object to read fromList
containing all the linesIOException
- if an I/O error occurspublic static <T> T readLines(Readable readable, LineProcessor<T> processor) throws IOException
Readable
object, stopping when the processor
returns false
or all lines have been read and returning the result
produced by the processor. Does not close readable
. Note that this
method may not fully consume the contents of readable
if the
processor stops processing early.IOException
- if an I/O error occurs@Deprecated public static <R extends Readable & Closeable,T> T readLines(InputSupplier<R> supplier, LineProcessor<T> callback) throws IOException
CharSource.readLines(LineProcessor)
instead. This
method is scheduled for removal in Guava 18.0.Readable
and Closeable
object
supplied by a factory, stopping when our callback returns false, or we
have read all of the lines.supplier
- the factory to read fromcallback
- the LineProcessor to use to handle the linesIOException
- if an I/O error occurs@Deprecated public static InputSupplier<Reader> join(Iterable<? extends InputSupplier<? extends Reader>> suppliers)
CharSource.concat(Iterable)
instead. This method
is scheduled for removal in Guava 18.0.Reader
suppliers into a single supplier.
Reader returned from the supplier will contain the concatenated data
from the readers of the underlying suppliers.
Reading from the joined reader will throw a NullPointerException
if any of the suppliers are null or return null.
Only one underlying reader will be open at a time. Closing the joined reader will close the open underlying reader.
suppliers
- the suppliers to concatenate@Deprecated public static InputSupplier<Reader> join(InputSupplier<? extends Reader>... suppliers)
CharSource.concat(CharSource[])
instead. This
method is scheduled for removal in Guava 18.0.join(Iterable)
.public static void skipFully(Reader reader, long n) throws IOException
n
characters of data from the reader. This method
will block until the full amount has been skipped. Does not close the
reader.reader
- the reader to read fromn
- the number of characters to skipEOFException
- if this stream reaches the end before skipping all
the charactersIOException
- if an I/O error occurspublic static Writer nullWriter()
Writer
that simply discards written chars.public static Writer asWriter(Appendable target)
Appendable
target. Closing the writer will close the target if it is Closeable
, and flushing the writer will flush the target if it is Flushable
.target
- the object to which output will be sent@Deprecated public static CharSource asCharSource(InputSupplier<? extends Readable> supplier)
InputSupplier<? extends Readable>
implementations to extend CharSource
or provide a method for
viewing the object as a CharSource
. This method is scheduled
for removal in Guava 18.0.Readable
supplier as a
CharSource
.
This method is a temporary method provided for easing migration from suppliers to sources and sinks.
@Deprecated public static CharSink asCharSink(OutputSupplier<? extends Appendable> supplier)
OutputSupplier<? extends Appendable>
implementations to extend CharSink
or provide a method for
viewing the object as a CharSink
. This method is scheduled
for removal in Guava 18.0.Appendable
supplier as a
CharSink
.
This method is a temporary method provided for easing migration from suppliers to sources and sinks.
Copyright © 2010-2014. All Rights Reserved.