View RSS Feed

My Java Tips

Flushing streams

Rate this Entry
by , 11-02-2011 at 06:07 PM (1004 Views)
Flushing outputstreams has its own importance. You will realize this when working on socket programming.


If you do not flush the output stream every time you write something on it, the data may not actually get written out to the socket, and the two programs will keep on waiting for the data forever.

You can just call flush() after you write something important:

Java Code:
// OutputStream out;
// byte[] data
out.write(data);
out.flush();
If you're writing text data, you might use a PrintWriter for output. PrintWriter has a special constructor that lets you specify if the stream should be flushed after every newline:

Java Code:
PrintWriter out = new PrintWriter(rawOut, true);
A PrintWriter created in this way will automatically flush itself whenever you write a line of text.

Submit "Flushing streams" to Facebook Submit "Flushing streams" to Digg Submit "Flushing streams" to del.icio.us Submit "Flushing streams" to StumbleUpon Submit "Flushing streams" to Google

Tags: None Add / Edit Tags
Categories
Java SE

Comments