Stream-style API are simpler to use and more efficient with less buffer copying.  The caller only needs to pass in a source Reader and a destination Writer, and that's it.