This week's book giveaway is in the OCAJP 8 forum.
We're giving away four copies of OCA Java SE 8 Programmer I Study Guide and have Edward Finegan & Robert Liguori on-line!
See this thread for details.
The moose likes I/O and Streams and the fly likes Is PrintWriter Buffered? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login

Win a copy of OCA Java SE 8 Programmer I Study Guide this week in the OCAJP 8 forum!
JavaRanch » Java Forums » Java » I/O and Streams
Bookmark "Is PrintWriter Buffered?" Watch "Is PrintWriter Buffered?" New topic

Is PrintWriter Buffered?

Alec Lee
Ranch Hand

Joined: Jan 28, 2004
Posts: 569
If we want buffered output to a file, should we wrap the printWriter around
a BufferedWriter like this:

The javadoc doesn't mention if PrintWriter is buffered or not. I want to use PrintWriter for writing formatted text string to a file but want it to be buffered.
Ulf Dittmer

Joined: Mar 22, 2005
Posts: 42958
Since you're using a BufferedWriter, it doesn't matter much whether the PrintWriter is buffered (and I think it isn't, because that's what BW is for). The important thing is that the data does get buffered before being written to disk, and that's what happens here.
Alec Lee
Ranch Hand

Joined: Jan 28, 2004
Posts: 569
Thanks for your advice. Actually, I'm worrying about buffering twice if PrintWriter already buffered.
Ilker Tasci

Joined: Nov 20, 2011
Posts: 1
Yes the PrintWriter is buffered.

See my little test code below:

I attached my pw to the console output.This code will not print the output to the screen because pw.flush() is not invoked(commented as you see).If you uncomment it,you'll see the output on the screen becuase it "flushes" its buffer and sends the data to the output stream which is the console output here.

It is sorta covered in the JavaRanch Style Guide.
subject: Is PrintWriter Buffered?
It's not a secret anymore!