Copying contents between BufferedStreams in Java
Instead of reading the buffered stream byte-by-byte inputStream.read() you might use the advantage of buffering. This will speed up the large content copy.

private boolean copyToStream(BufferedInputStream inputStream, BufferedOutputStream fileStream) throws IOException {
    byte[] buffer = new byte[BUFFER_SIZE];
    int n;
    while ((n = inputStream.read(buffer)) != -1) {
        fileStream.write(buffer, 0, n);
    }
}


Also, consider java.nio.FileChannel transferTo() which may allow using DMA.