I have been given a task of copying data from a server. I am using BufferedInputStream
and output stream to copy the data and I am doing it byte by byte. Even thoug
Here is a link to an excellent post explaining how to use nio
channels to make copies of streams. It introduces a helper method ChannelTools.fastChannelCopy
that lets you copy streams like this:
final InputStream input = new FileInputStream(inputFile);
final OutputStream output = new FileOutputStream(outputFile);
final ReadableByteChannel inputChannel = Channels.newChannel(input);
final WriteableByteChannel outputChannel = Channels.newChannel(output);
ChannelTools.fastChannelCopy(inputChannel, outputChannel);
inputChannel.close();
outputChannel.close()