Class CountingOutputStream
- All Implemented Interfaces:
Closeable
,Flushable
,AutoCloseable
A typical use case would be during debugging, to ensure that data is being written as expected.
-
Field Summary
Fields inherited from class java.io.FilterOutputStream
out
-
Constructor Summary
ConstructorDescriptionConstructs a new CountingOutputStream. -
Method Summary
Modifier and TypeMethodDescriptionprotected void
beforeWrite
(int n) Updates the count with the number of bytes that are being written.long
The number of bytes that have passed through this stream.int
getCount()
Gets the number of bytes that have passed through this stream.long
Sets the byte count back to 0.int
Sets the byte count back to 0.Methods inherited from class org.apache.commons.io.output.ProxyOutputStream
afterWrite, close, flush, handleIOException, write, write, write
-
Constructor Details
-
CountingOutputStream
Constructs a new CountingOutputStream.- Parameters:
out
- the OutputStream to write to
-
-
Method Details
-
beforeWrite
Updates the count with the number of bytes that are being written.- Overrides:
beforeWrite
in classProxyOutputStream
- Parameters:
n
- number of bytes to be written to the stream- Since:
- 2.0
-
getByteCount
The number of bytes that have passed through this stream.NOTE: This method is an alternative for
getCount()
. It 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
-
getCount
Gets 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
. SeegetByteCount()
for a method using along
.- Returns:
- the number of bytes accumulated
- Throws:
ArithmeticException
- if the byte count is too large
-
resetByteCount
Sets the byte count back to 0.NOTE: This method is an alternative for
resetCount()
. It 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
-
resetCount
Sets 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
. SeeresetByteCount()
for a method using along
.- Returns:
- the count previous to resetting
- Throws:
ArithmeticException
- if the byte count is too large
-