Java nın ilk başlarda internet için geliştirildiğini anımsarsak. İnternetteki bir dosyayı jvm yüklü bir cihaza indirmemiz çok kolay gerçekleşecektir.
Bize internetteki dosyayı indirmemiz gerekli olan paketler
 import java.io.*;
import java.net.*;
 
Adımlar :
 
1-     Bir URL nesnesi örneklendir.URL  nesnesinin yapılandırıcı metoduna internetteki dosyayı parametre olarak ver.
2-     URL nesnesinin openStream() metodunu kulanarak bir InputStream nesnesi elde et.
3-     Cihazın sabit diskinde FileOutputStream kullanarak bir dosya oluştur
4-     InputStream den dosyanın son sekizlik(byte) ‘a gelene kadar Akıştan (Stream) oku ve okunan sekizlik veriyi FileInputStream Kullanarak oluşturduğun dosya ya yaz.
Oluşan algoritmayı koda dökecek olursak.
 import java.io.*;
 import java.net.*; 
  public class Indir{    
 public static void main(String[] args) throws MalformedURLException, IOException { 
URL url = new URL(”http://java.sun.com/j2se/1.5/pdf/generics-tutorial.pdf”);    
BufferedInputStream  TampondanOkuyucu= new BufferedInputStream(url.openStream());     
BufferedOutputStream TampondanYazıcı= new BufferedOutputStream(new FileOutputStream(”C:/indirilen.pdf”));             
                        byte i = 0;
                  do
                        {         
                               i = (byte)TampondanOkuyucu.read();
                               TampondanYazici.write(i)
                         }
                  while (i != -1);    
    TampondanOkuyucu.close();
    TampondanYazici.close();      
    System.out.println(”Dosya basarıyla kayıt edildi”);    
    }
}
   
Not olarak akıştan her sefirinde bir sekizlik okuyup, yazmak yerine tüm sekizlikleri bir Byte dizisine aktarmak ya da Byte dizilerine bölmek performansı artıracaktır.
Kaynak : http://boraabaci.wordpress.com/
hardcoder
defaten@msn.com