question: public static long copy ( InputStream input , OutputStream output ) throws IOException { byte [ ] buffer = new byte [ DEFAULT_BUFFER_SIZE ] ; long count = 0 ; int n = 0 ; while ( - 1 != ( n = input . read ( buffer ) ) ) { output . write ( buffer , 0 , n ) ; count += n ; } return count ; }
target:  Copy input to output; neither stream is closed 