C# FTP Server Dosya Listesi Almak

C# FTP Server Dosya Listesi Almak

11 Nisan 2019 1 Yazar: Mustafa BÜKÜLMEZ
Toplam Görüntülenme : 25
Yaklaşık okuma süresi : 2 DK
C# FTP Server Klasör Açmak
C# FTP Server Dosya Kontrolü Yapmak
C# FTP Server Dosya Listesi Almak
5 (100%) 2 Oy

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

İlgili İçerik  C# Dizi ve ArrayList Kullanımı

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

C# FTP Server Klasör Açmak
C# FTP Server Dosya Kontrolü Yapmak