For symmetry reason (Reader also does it) I would like to propose that a Writer might also take FileBuffer to operate directly in memory. This can certainly crash the application for huge data sets, but might speed up operations on small to medium data sets, especially when there are multiple passes needed.