Du bist nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: DeveloperTalk. Falls dies dein erster Besuch auf dieser Seite ist, lies bitte die Hilfe durch. Dort wird dir die Bedienung dieser Seite näher erläutert. Darüber hinaus solltest du dich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutze das Registrierungsformular, um dich zu registrieren oder informiere dich ausführlich über den Registrierungsvorgang. Falls du dich bereits zu einem früheren Zeitpunkt registriert hast, kannst du dich hier anmelden.

mäx

Anfänger

  • »mäx« ist der Autor dieses Themas

Beiträge: 2

Registrierungsdatum: 09.01.2013

  • Private Nachricht senden

1

09.01.2013, 11:57

Bestimmte Dateien via FTP laden - Java

Hallo zusammen,

ich bin neue hier im Forum und auch relativ neu in der Java Programmierung.
Ich hänge jetzt schon seit längerer Zeit an einem Problem mit FTP Downloads.
Und zwar habe ich folgenden Code, mit dem ich 1File welches ich per Name bestimme Speichern kann:

Quellcode

1
2
3
4
5
6
7
8
9
FTPClient client = new FTPClient();FileOutputStream fos = null;
client.connect("Server", 21);   
client.login("Benutzername", "Kennwort");
String filename = "2012-12-25.csv";
fos = new FileOutputStream("/Users/max/Desktop/" + filename);
final boolean retrieve = client.retrieveFile("/whitebox/" + filename, fos);
System.out.println("Retrive: " + retrieve);
fos.close();
client.disconnect();



Mein Ziel ist es aber, dass ich mehrere Dateien sagen wir mal per Klick runter laden will. Die Files heißen alle so wie oben im Code, also z.b 2012-12-24, 2012-12-23 usw. !!
Meine Frage ist nun, wie kann ich angeben, dass er z.b alle Dateien die mit 2012-12 anfangen laden soll ?!

Vielen Dank für eure Hilfe

Grüße
max

Patrick

Profi

Beiträge: 694

Danksagungen: 168

  • Private Nachricht senden

2

09.01.2013, 12:19

Ich hab zwar nicht viel Ahnung von Java, aber prinzipiell würde ich alle Dateinamen dir vom Server holen und diese dann vergleichen.

Sprich:

Java-Quelltext

1
2
3
4
5
6
7
8
9
String filenames[]; // Filenames speichern

foreach(String filename in filenames) {

    if(filename.substring(0, 7).equals("2012-12") { // die ersten 7 zeichen werden abgetrennt und verglichen
        // Datei downloaden
    }

}
Ex ungue leonem.

War der Beitrag für dich hilfreich?
Dann drück auf .

Es hat sich bereits 1 registrierter Benutzer bedankt.

Benutzer, die sich für diesen Beitrag bedankt haben:

Erik (09.01.2013)

Johannes S.

Fortgeschrittener

Beiträge: 444

Registrierungsdatum: 24.06.2011

Wohnort: Lychen

Danksagungen: 71

  • Private Nachricht senden

3

10.01.2013, 00:57

Ich auf die Schnelle keine Documentation von deiner Klasse "FTPClient" gefunden. Ist das eine Klasse aus einer externen library? Wenn man die Library nicht kennt, kann man nähmlich nicht wirklich Aussagen über die Umsetzung machen.

Die Gurndidee hat Patrick ja bereits genannt. Nur eine Ergeänzung:

Java-Quelltext

1
2
3
filename.substring(0, 7).equals("2012-12")
// does the same like
filename.startsWith("2012-12")
Signatur ?

Es hat sich bereits 1 registrierter Benutzer bedankt.

Benutzer, die sich für diesen Beitrag bedankt haben:

mäx (30.01.2013)

Verwendete Tags

download, FTP, Java