org.apache.commons.io.input
public class CountingInputStream extends ProxyInputStream
A typical use case would be during debugging, to ensure that data is being read as expected.
Version: $Id: CountingInputStream.java 471628 2006-11-06 04:06:45Z bayard $
Field Summary | |
---|---|
long | count The count of bytes that have passed. |
Constructor Summary | |
---|---|
CountingInputStream(InputStream in)
Constructs a new CountingInputStream.
|
Method Summary | |
---|---|
long | getByteCount()
The number of bytes that have passed through this stream.
|
int | getCount()
The number of bytes that have passed through this stream.
|
int | read(byte[] b)
Reads a number of bytes into the byte array, keeping count of the
number read.
|
int | read(byte[] b, int off, int len)
Reads a number of bytes into the byte array at a specific offset,
keeping count of the number read.
|
int | read()
Reads the next byte of data adding to the count of bytes received
if a byte is successfully read.
|
long | resetByteCount()
Set the byte count back to 0.
|
int | resetCount()
Set the byte count back to 0.
|
long | skip(long length)
Skips the stream over the specified number of bytes, adding the skipped
amount to the count.
|
Parameters: in the InputStream to delegate to
NOTE: This method is an alternative for getCount()
and was added because that method returns an integer which will
result in incorrect count for files over 2GB.
Returns: the number of bytes accumulated
Since: Commons IO 1.3
NOTE: From v1.3 this method throws an ArithmeticException if the
count is greater than can be expressed by an int
.
See getByteCount for a method using a long
.
Returns: the number of bytes accumulated
Throws: ArithmeticException if the byte count is too large
Parameters: b the buffer into which the data is read, not null
Returns: the total number of bytes read into the buffer, -1 if end of stream
Throws: IOException if an I/O error occurs
See Also: java.io.InputStream#read(byte[])
Parameters: b the buffer into which the data is read, not null off the start offset in the buffer len the maximum number of bytes to read
Returns: the total number of bytes read into the buffer, -1 if end of stream
Throws: IOException if an I/O error occurs
See Also: java.io.InputStream#read(byte[], int, int)
Returns: the byte read, -1 if end of stream
Throws: IOException if an I/O error occurs
See Also: java.io.InputStream#read()
NOTE: This method is an alternative for resetCount()
and was added because that method returns an integer which will
result in incorrect count for files over 2GB.
Returns: the count previous to resetting
Since: Commons IO 1.3
NOTE: From v1.3 this method throws an ArithmeticException if the
count is greater than can be expressed by an int
.
See resetByteCount for a method using a long
.
Returns: the count previous to resetting
Throws: ArithmeticException if the byte count is too large
Parameters: length the number of bytes to skip
Returns: the actual number of bytes skipped
Throws: IOException if an I/O error occurs
See Also: java.io.InputStream#skip(long)