public final class ByteStreams extends Object
NOTE: this is a copy of a subset of Guava's ByteStreams
. The
implementation must match as closely as possible to Guava's implementation.
Modifier and Type | Method and Description |
---|---|
static long |
copy(InputStream from,
OutputStream to)
Copies all bytes from the input stream to the output stream.
|
static InputStream |
limit(InputStream in,
long limit)
Wraps an input stream, limiting the number of bytes which can be read.
|
static int |
read(InputStream in,
byte[] b,
int off,
int len)
Reads some bytes from an input stream and stores them into the buffer array
b . |
public static long copy(InputStream from, OutputStream to) throws IOException
from
- the input stream to read fromto
- the output stream to write toIOException
public static InputStream limit(InputStream in, long limit)
in
- the input stream to be wrappedlimit
- the maximum number of bytes to be readInputStream
public static int read(InputStream in, byte[] b, int off, int len) throws IOException
b
.
This method blocks until len
bytes of input data have been read into the array, or
end of file is detected. The number of bytes read is returned, possibly zero. Does not close
the stream.
A caller can detect EOF if the number of bytes read is less than len
. All subsequent
calls on the same stream will return zero.
If b
is null, a NullPointerException
is thrown. If off
is negative,
or len
is negative, or off+len
is greater than the length of the array b
, then an IndexOutOfBoundsException
is thrown. If len
is zero, then no bytes
are read. Otherwise, the first byte read is stored into element b[off]
, the next one
into b[off+1]
, and so on. The number of bytes read is, at most, equal to len
.
in
- the input stream to read fromb
- the buffer into which the data is readoff
- an int specifying the offset into the datalen
- an int specifying the number of bytes to readIOException
Copyright © 2011–2020 Google. All rights reserved.