Package com.adobe.internal.io
Class CountingInputStream
- java.lang.Object
-
- java.io.InputStream
-
- java.io.FilterInputStream
-
- com.adobe.internal.io.CountingInputStream
-
- All Implemented Interfaces:
java.io.Closeable,java.lang.AutoCloseable
- Direct Known Subclasses:
RangedInputStream
public class CountingInputStream extends java.io.FilterInputStreamAFilterInputStreamwrapper that counts the number of bytes read from the stream or skipped over since the creation of this wrapper.
-
-
Constructor Summary
Constructors Constructor Description CountingInputStream(java.io.InputStream is)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description longgetOffset()Get the offset in the wrapped stream since the creation of this wrapper.intread()Reads the next byte of data from this input stream.intread(byte[] b)Reads up to byte.length bytes of data from this input stream into an array of bytes.intread(byte[] b, int off, int len)Reads up to len bytes of data from this input stream into an array of bytes.longskip(long n)Skips over and discards n bytes of data from the input stream.
-
-
-
Method Detail
-
read
public int read() throws java.io.IOExceptionReads the next byte of data from this input stream. The value byte is returned as an int in the range 0 to 255. If no byte is available because the end of the stream has been reached, the value -1 is returned. This method blocks until input data is available, the end of the stream is detected, or an exception is thrown.- Overrides:
readin classjava.io.FilterInputStream- Returns:
- the next byte of data or
-1if the end of stream is reached - Throws:
java.io.IOException- if an I/O error occurs
-
read
public int read(byte[] b, int off, int len) throws java.io.IOExceptionReads up to len bytes of data from this input stream into an array of bytes. This method blocks until some input is available.- Overrides:
readin classjava.io.FilterInputStream- Parameters:
b- the buffer into which the data is readoff- the start offset in the buffer to write the datalen- the maximum number of bytes to read- Returns:
- the total number of bytes read into the buffer, or
-1if there is no more data because the end of the stream has been reached. - Throws:
java.io.IOException- if an I/O error occurs
-
read
public int read(byte[] b) throws java.io.IOExceptionReads up to byte.length bytes of data from this input stream into an array of bytes. This method blocks until some input is available.- Overrides:
readin classjava.io.FilterInputStream- Returns:
- the total number of bytes read into the buffer, or
-1if there is no more data because the end of the stream has been reached. - Throws:
java.io.IOException- if an I/O error occurs
-
skip
public long skip(long n) throws java.io.IOExceptionSkips over and discards n bytes of data from the input stream. The skip method may, for a variety of reasons, end up skipping over some smaller number of bytes, possibly 0. The actual number of bytes skipped is returned.- Overrides:
skipin classjava.io.FilterInputStream- Parameters:
n- the number of bytes to be skipped- Returns:
- the actual number of bytes skipped
- Throws:
java.io.IOException- if an I/O error occurs
-
getOffset
public long getOffset()
Get the offset in the wrapped stream since the creation of this wrapper.- Returns:
- the offset in bytes
-
-