com.google.common.io
Class CountingOutputStream

java.lang.Object
  extended by java.io.OutputStream
      extended by java.io.FilterOutputStream
          extended by com.google.common.io.CountingOutputStream
All Implemented Interfaces:
Closeable, Flushable

@Beta
public final class CountingOutputStream
extends FilterOutputStream

An OutputStream that counts the number of bytes written.

Since:
1
Author:
Chris Nokleberg

Field Summary
 
Fields inherited from class java.io.FilterOutputStream
out
 
Constructor Summary
CountingOutputStream(OutputStream out)
          Wraps another output stream, counting the number of bytes written.
 
Method Summary
 long getCount()
          Returns the number of bytes written.
 void write(byte[] b, int off, int len)
          Writes len bytes from the specified byte array starting at offset off to this output stream.
 void write(int b)
          Writes the specified byte to this output stream.
 
Methods inherited from class java.io.FilterOutputStream
close, flush, write
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CountingOutputStream

public CountingOutputStream(OutputStream out)
Wraps another output stream, counting the number of bytes written.

Parameters:
out - the output stream to be wrapped
Method Detail

getCount

public long getCount()
Returns the number of bytes written.


write

public void write(byte[] b,
                  int off,
                  int len)
           throws IOException
Description copied from class: java.io.FilterOutputStream
Writes len bytes from the specified byte array starting at offset off to this output stream.

The write method of FilterOutputStream calls the write method of one argument on each byte to output.

Note that this method does not call the write method of its underlying input stream with the same arguments. Subclasses of FilterOutputStream should provide a more efficient implementation of this method.

Overrides:
write in class FilterOutputStream
Parameters:
b - the data.
off - the start offset in the data.
len - the number of bytes to write.
Throws:
IOException - if an I/O error occurs.
See Also:
FilterOutputStream.write(int)

write

public void write(int b)
           throws IOException
Description copied from class: java.io.FilterOutputStream
Writes the specified byte to this output stream.

The write method of FilterOutputStream calls the write method of its underlying output stream, that is, it performs out.write(b).

Implements the abstract write method of OutputStream.

Overrides:
write in class FilterOutputStream
Parameters:
b - the byte.
Throws:
IOException - if an I/O error occurs.