org.apache.commons.io.input

Class CountingInputStream

  • All Implemented Interfaces:
    Closeable, AutoCloseable


    public class CountingInputStreamextends ProxyInputStream
    A decorating input stream that counts the number of bytes that have passed through the stream so far.

    A typical use case would be during debugging, to ensure that data is being read as expected.

    Version:
    $Id: CountingInputStream.java 1586350 2014-04-10 15:57:20Z ggregory $
    • Constructor Detail

      • CountingInputStream

        public CountingInputStream(InputStream in)
        Constructs a new CountingInputStream.
        Parameters:
        in - the InputStream to delegate to
    • Method Detail

      • skip

        public long skip(long length)          throws IOException
        Skips the stream over the specified number of bytes, adding the skipped amount to the count.
        Overrides:
        skip in class ProxyInputStream
        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:
        InputStream.skip(long)
      • afterRead

        protected void afterRead(int n)
        Adds the number of read bytes to the count.
        Overrides:
        afterRead in class ProxyInputStream
        Parameters:
        n - number of bytes read, or -1 if no more bytes are available
        Since:
        2.0
      • getCount

        public int getCount()
        The number of bytes that have passed through this stream.

        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
      • resetCount

        public int resetCount()
        Set the byte count back to 0.

        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
      • getByteCount

        public long getByteCount()
        The number of bytes that have passed through this stream.

        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:
        1.3
      • resetByteCount

        public long resetByteCount()
        Set the byte count back to 0.

        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:
        1.3

Copyright © 2002–2016 The Apache Software Foundation. All rights reserved.



NOTHING
NOTHING
Add the Maven Dependecy to your project: maven dependecy for com.amazonaws : aws-java-sdk : 1.3.14