1. Ana Sayfa
  2. C Sharp

C# FTP Server Dosya Listesi Almak

C# FTP Server Dosya Listesi Almak
+ - 0

C# FTP Server Dosya Listesi Almak, yazım ile C# eğitim setime devam ediyorum. Bu yazım C# İle FTP Üzerine İşlemler yazı serimin 4. yazısıdır.

C# FTP Server Dosya Listesi Almak

Önceki yazım olan C# FTP Server Dosya Kontrolü Yapmak yazımda ftp servere bağlanıp bir dosya klasör varmı yokmu hakkında bilgiler vermiştim. Bu yazımda C# ile bir ftp server ‘e bağlanıp klasör ve dosya listesi alma işlemini göreceğiz.

Arkadaşlar bu konuyu hiç denemedim ama çalışacağına inanıyorum. Bu yüzden paylaşıyorum. Bir sorun yaşarsanız yorum olarak sorabilirsiniz.

Öncelikle FTP Serverimize bağlantı kodlarımızı verelim.

string  FTPDosyaYolu = "ftp:/88.88.88.88:8888//FTP_Files";
FtpWebRequest request = (FtpWebRequest)FtpWebRequest.Create(FTPDosyaYolu);

string username = "kullaniciadi";
string password = "şifre";
request.Credentials = new NetworkCredential(username, password);

request.UsePassive = true; // pasif olarak kullanabilme
request.UseBinary = true; // aktarım binary ile olacak
request.KeepAlive = false; // sürekli açık tutma

request.Method = WebRequestMethods.Ftp.ListDirectory;

Gördüğünüz gibi bu seferki metodumuz ListDirectory’dir.

Şimdi kodlarımızın devamını görelim.

string[] DosyaListesi;
WebResponse response = FTP.GetResponse();

    StreamReader reader = new StreamReader(response.GetResponseStream());
    string line = reader.ReadLine();
    while (line != null)
    {
        result.Append(line);
        result.Append("\n");
        line = reader.ReadLine();
    }
    result.Remove(result.ToString().LastIndexOf('\n'), 1);
    reader.Close();
    response.Close();
    DosyaListesi = result.ToString().Split('\n');
    for (int x = 0; x < downloadFiles.Length; x++) 
    {
        lbListe.Items.Add(DosyaListesi[x].ToString());
    }

Kodlarımızı açıklamak gerekirse,

Öncelikle alacağımız listeyi yükleyeceğimiz bir array list tanımlıyoruz.

Yaptığımız isteğe geri dönen yanıtı response ile alıyoruz.

StreamReader ile gelen yanıtı okuyoruz.

Gelen listedeki verileri Append ile aralarına enter (alt satıra inme) yaparak alıyoruz.

En sonra kalan enter işlemini geri alıyoruz.

Okuma işlemini (Reader) ile Yanıtı (Response) kapatıyoruz.

Aldığımız listeyi, ilk tanımladığımız array liste atayarak bir for döngüsü ile bir listbox nesnesine yazıyoruz. (For döngüsü hakkındaki dersime buradan ulaşabilirsiniz.)

Bu şekilde FTP Serverdeki bütün dosya ve klasörleri listbox’a doldurmuş oluyoruz.

 


C# FTP Server Dosya Listesi Almak, yazımda buraya kadar arkadaşlar. Diğer derslerimizde görüşmek üzere…

C Sharp Eğitim Seti eğitimi sayfasına gitmek için tıklayınız.

Derslerime özel olarak hazırladığım Github Projeme buradan ulaşabilirsiniz…

Takipte ve Sağlıcakla kalın. ?

Bu yazıya tepkiniz ne oldu?

Yazar Hakkında

Lise Ağ Sistemleri ve Yönetimi bölümü, üniversite Bilgisayar Programcılığı bölümü Ön Lisans, Yönetim Bilişim Sistemleri Lisans öğrenimi aldım. Askerlik görevimi tamamladım. Uzmanlık alanım; C# ve SQL Programlama dilleri ile müşteri odaklı, kullanıcı dostu ERP ve CRM gibi sistemleri geliştirmektir. Ayrıca şuanda PHP ve MYSQL alanında projeler geliştirmekteyim. C++, Phyton, Xamarin, MVC gibi konuları öğrenmek ve kendimi geliştirme çabası içerisindeyim. Discord için: https://discord.gg/FBxZeHu9

Değerli yorumlarınızı bekliyorum. :)