I suspect this is an implementation detail, but I would expect most implementations to use a buffer, yes. Of course, you should not rely on the fact that it is not buffered. When you hide or close a record, that should be fine.
Note that I personally do not like to use FileWriter , because it does not allow you to specify a character encoding - instead, I usually wrap FileOutputStream in OutputStreamWriter .
Jon skeet
source share