Java tutorial
// CountOutputStream.java // $Id: CountOutputStream.java,v 1.3 2000/08/16 21:37:57 ylafon Exp $ // (c) COPYRIGHT MIT and INRIA, 1996. // Please first read the full copyright statement in file COPYRIGHT.html import java.io.OutputStream; /** * This class can be used to count number of bytes emitted to a stream. The * stream will actually throw the data away. It's main function is to count the * number of bytes emitted to a stream before actually emitting the bytes * (that's not really efficient, but works enough). */ public class CountOutputStream extends OutputStream { protected int count = 0; /** * Get the current number of bytes emitted to that stream. * * @return The current count value. */ public int getCount() { return count; } /** * Close that count stream. */ public void close() { return; } /** * Flush that count stream. */ public void flush() { return; } /** * Write an array of bytes to that stream. */ public void write(byte b[]) { count += b.length; } /** * Write part of an array of bytes to that stream. */ public void write(byte b[], int off, int len) { count += len; } /** * Write a single byte to that stream. */ public void write(int b) { count++; } /** * Create a new instance of that class. */ public CountOutputStream() { this.count = 0; } }