"/>"/>
Yazılım Dilleri
Asp.Net 4.5 Kitabı
Skip Navigation Links

C#'ta FTP ile Dosya Alma

C# dili ile File Transfer Protocol(FTP) kullanarak dosya alma islemini inceleyelim

Bir önceki makalede FTP'nin ne oldugunu inceleyip FTP ile dosya gönderme islemini gerçeklestirmistik.

Simdi ise FTP ile sunucudan dosya alma islemini inceleyelim.

Dosya alma islemi için C# kodlari ve açiklamalari asagidadir.

 

 

        public string FTPdenDosyaIndir(string dosya,string klasor)
        {
            FtpWebRequest ftpIstegi;
            try
            {
               
                FileStream stream = new FileStream(klasor + "\\" + dosya.Substring(dosya.LastIndexOf('\\')), FileMode.Create);
 
                //Alinacak dosyayi bul
                ftpIstegi = (FtpWebRequest)FtpWebRequest.Create(new Uri("ftp://" + ftpServerIP + "/" + dosya.Substring(dosya.LastIndexOf('\\'))));
               
                // Yapilacak islem (Download)
                ftpIstegi.Method = WebRequestMethods.Ftp.DownloadFile;
               
                //Verinin alim sekli.
                ftpIstegi.UseBinary = true;
 
                //Kullanici adi ve sifre
                ftpIstegi.Credentials = new NetworkCredential("deneme@ugurkizmaz.com", "123s");
               
                FtpWebResponse yanit = (FtpWebResponse)ftpIstegi.GetResponse();
              
                Stream ftpStream = yanit.GetResponseStream();
               
                //Buffer uzunlugu
                int bufferUzunlugu = 2048;
                byte[] buffer = new byte[bufferUzunlugu];
                int okumaSayisi = ftpStream.Read(buffer, 0, bufferUzunlugu);
              
                while (okumaSayisi > 0)
                {
                    stream.Write(buffer, 0, okumaSayisi);
                    okumaSayisi = ftpStream.Read(buffer, 0, bufferUzunlugu);
                }
                ftpStream.Close();
                stream.Close();
                yanit.Close();
                return "";
            }
            catch (Exception ex)
            {
                return ex.Message;
            }
        }
 

Veysel Ugur KIZMAZ

Yorumlar (1)

  1. Avatar
    koray kurucay

    11.02.2013

    Merhaba Veysel bey, Ben bir bitirme projesi alıyorumda şuan, daha proje seçimi yapıcaz, bende bu arada bilgisayar müh okuyorum ayrıa Cisconun CCNA sertifaka programını başladım, dicem şudur ki, bitirme projesi olarak c# ile basit arayüzü olan bir program yapıp ayrıca bir server kurup , üzaktan bağlanarak dosya çekme ve yükleme işlemlerini yapmak gibi bir düşüncem var, kodlama kısmımda büyük eksiklerim var, bu gibi bir projeyi sizce nasıl yapabılırım,adım adım yardımcı olabilirmisiniz. Teşekkür ederim,iyi çalışmalar...

Yorum Yap

Mail listesine katılmak için tıklayınız

Hakkımdaki son bilgilere anlık erişmek için mail listesine katılabilirsiniz.