Nick_SMI
Ensign
- Registriert
- Sep. 2015
- Beiträge
- 153
Hallo zusammen!
Ich möchte folgendes für mein Programm haben:
Wenn ich bspw. einen Ordner/Pfad angebe, der auf meinem Server existiert, soll mir jede Datei mit ihrem Pfad zurückgeben.
Momentan habe ich folgende Funktion:
Klasse:
Im Code:
Dabei listet er mir nur die von dem Ordner "Dateien"...
Nun möchte ich, dass der jeden Ordner darin öffnet und das gleiche tut, also weiter in den Ordner und jede Datei ausgeben...
Grüße und danke im Voraus!
Ich möchte folgendes für mein Programm haben:
Wenn ich bspw. einen Ordner/Pfad angebe, der auf meinem Server existiert, soll mir jede Datei mit ihrem Pfad zurückgeben.
Momentan habe ich folgende Funktion:
Klasse:
Code:
public ftp(string hostIP, string userName, string password) { host = hostIP; user = userName; pass = password; }
public string[] directoryListSimple(string directory)
{
try
{
ftpRequest = (FtpWebRequest)FtpWebRequest.Create(host + "/" + directory);
ftpRequest.Credentials = new NetworkCredential(user, pass);
ftpRequest.UseBinary = true;
ftpRequest.UsePassive = true;
ftpRequest.KeepAlive = true;
ftpRequest.Method = WebRequestMethods.Ftp.ListDirectory;
ftpResponse = (FtpWebResponse)ftpRequest.GetResponse();
ftpStream = ftpResponse.GetResponseStream();
StreamReader ftpReader = new StreamReader(ftpStream);
string directoryRaw = null;
try { while (ftpReader.Peek() != -1) { directoryRaw += ftpReader.ReadLine() + "|"; } }
catch (Exception ex) { Console.WriteLine(ex.ToString()); }
ftpReader.Close();
ftpStream.Close();
ftpResponse.Close();
ftpRequest = null;
try { string[] directoryList = directoryRaw.Split("|".ToCharArray()); return directoryList; }
catch (Exception ex) { Console.WriteLine(ex.ToString()); }
}
catch (Exception ex) {
Console.WriteLine(ex.ToString());
}
return new string[] { "" };
}
Im Code:
Code:
ftp ftpClient = new ftp(@"ftp://xyyy.de", "meinBenutzername", "MeinPass");
string[] detailDirectoryListing = ftpClient.directoryListSimple("Dateien");
for (int i = 0; i < detailDirectoryListing.Count(); i++)
{
Debug.WriteLine(detailDirectoryListing[i]);
}
Dabei listet er mir nur die von dem Ordner "Dateien"...
Nun möchte ich, dass der jeden Ordner darin öffnet und das gleiche tut, also weiter in den Ordner und jede Datei ausgeben...
Grüße und danke im Voraus!