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.
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.