1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
URL url = new URL(URL_FICHIER_DISTANT);
InputStream inputstream = url.openConnection().getInputStream();
ReadableByteChannel readChannel = Channels.newChannel(inputstream);
ByteBuffer buffer = ByteBuffer.allocate(2048);
File dest = new File(CHEMIN_FICHIER_LOCAL);
BufferedOutputStream destinationFile = new BufferedOutputStream(new FileOutputStream(dest));
WritableByteChannel writeChannel = Channels.newChannel(destinationFile);
try{
int iNbRead = 0;
buffer.clear();
while ((iNbRead = readChannel.read(buffer)) > 0 && writeChannel.isOpen())
{
buffer.rewind();
ByteBuffer bufferW = buffer.wrap(buffer.array(),0,iNbRead);
writeChannel.write(bufferW);
buffer.clear();
}
}
finally
{
destinationFile.close();
inputstream.close();
} |
Partager