ERLEDIGT
JA
JA
ANTWORTEN
8
8
ZUGRIFFE
662
662
EMPFEHLEN
-
20.05.11 17:25 #1
Hi Leute,
ich habe das Gefühl, dass ich gerade absolut blind vom Programmieren geworden bin.
Ich habe einen sehr abgespeckten FTP Client geschrieben. Dieser soll nichts anderes machen, als Verzeichnisse und Dateien vom FTP Server über FTP auslesen.
Dazu habe ich eine Socketverbindung zum FTP Server aufgebaut.
Nachdem ich mich in den Passiv Modus "PASV" begeben habe, rufe ich die Dateiliste für das aktuelle Verzeichnis auf mit "NLST".
Anschließend lese ich wie im folgenden Code zu sehen die Liste aus. Das funktioniert so weit.
Doch wie kann ich jetzt prüfen, ob das was in meinem StringBuffer liegt eine Datei oder ein Verzeichnis ist? Ich kann es nicht in ein "File" verwandeln, wenn ich z.B. Den Umweg über die URL Klasse nehme.
Code :1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
public void listenToServer() { //Listeninhalt StringBuffer sb = new StringBuffer(); try { int amount = 1; while (amount > 0) { amount = this.in.read(); //Steuercodes umwandeln in CHAR und dem Stringbuffer anfügen. sb.append((char)amount); } } catch (IOException ioe) { System.out.println(ioe); } this.cleanDataConnection(); System.out.println(sb.toString()); if (this.ftpClient.isListCommand()){ //Die Liste teilen, damit man weiter arbeiten kann. String test[] = sb.toString().split("\n"); int i = test.length; for (int n = 2; n < i; n++) { File file = null; //Hier muss geprüft werden, ob es eine Datei oder ein Verzeichniss ist. //System.out.println(test[n] + " : " + file.isDirectory()); } } }
Nun. Was kann ich tun um das ganze hin zu bekomme?
Gruß
ChrisSag niemals nie
-
20.05.11 18:09 #2SE Tutorials.de Gastzugang
Erstens : [java][/java] Code-Tags verwenden ... die normalen [code][/code] Tags sind nicht so schön und haben auch kein Syntaxhighlightning. Außerdem bleibt dann die original-Formatierung *wenn du wie in den Konventionen beschrieben mit TAB arbeitest* erhalten.
Zweitens : wenn ich mich recht entsinne ist das Command "LIST" und nicht "NLST" ... kommt drauf an welchen FTP-Server du verwendest was
Drittens : eine sinnvolle Info wäre damit wir dementsprechend mal nachgucken können. Es nützt nichts wenn wir dich jetzt mit haufen nicht-RFC-Commands zubomben die für sämtliche andere Server gehen aber nicht für deinen ...
-
20.05.11 19:44 #3
Hi.
Zu 1. Ich nutzte nur die Vorlage
Zu 2 es ist das Command List nimmt der Server leider nicht. Warum auch immer
Zu 3. Da ich versuche JAVA gerecht zu werden, nutze ich lediglich die RAW Commands. Dann funktioniert es hoffentlich überall.
Ich hoffe, dass macht das deutlicher
Gruß
ChrisSag niemals nie
-
20.05.11 22:34 #4
- Registriert seit
- Feb 2009
- Beiträge
- 193
Es könnte auch weiterhelfen wenn du mal den Namen deines Servers mit Version postest. Evtl. kennt jemand anderes ja auch noch die genauen Spezifikationen zu deinem Server.
-
21.05.11 12:08 #5SE Tutorials.de Gastzugang
Wie gesagt ... ob das Command nun wirklich "LIST" oder "NLST" heißt weis ich nich genau ... bin aber der Meinung das bei FileZilla Server und auch in verbindung mit IE als Client so gesehen zu haben ... kann mich aber auch irren da es verdammt lange her ist.
Das du erstmal nur dierekt RAW arbeitest habe ich doch garnicht bemängelt. Ich weis zwar das die Apache-Commons auch Klassen für FTP haben ... aber da ich selber nie damit gearbeitet habe müssten hier mal unsere Profis ran.
-
21.05.11 19:40 #6
Hi. Wollte auch nicht unhöflich wirken. Es ist nur ziemlich verzwickt. Ich Teste mit dem aktuellen FileZilla Server. Letztlich soll es aber mit jedem Server kompatible sein.
Gruß
ChrisSag niemals nie
-
21.05.11 21:27 #7SE Tutorials.de Gastzugang
Also laut offizieller FileZilla-Page ist das Command definitiv LIST und nicht NLST ... vielleicht löst das deine Probleme.
-
22.05.11 22:02 #8
Es hat geklappt. Ich danke euch. Der Befehl LIST beinhaltet die Information, welche ich brauche.
Sag niemals nie
-
25.05.11 15:56 #9SE Tutorials.de Gastzugang
Darf ich mich jetzt dazu noch äußern das ich das bereits seit 2 Posts versucht habe dir klar zumachen oder muss ich mir das jetzt klemmen weils sonst echt zu peinlich wird ? *spasseshalber kann man ruhig mal so eine Frage stellen =)*
Ähnliche Themen
-
Überprüfen ob ein Objekt ein Verzeichnis oder eine Datei ist
Von Roumeo im Forum JavaAntworten: 4Letzter Beitrag: 06.05.09, 10:47 -
Feststellen ob Datei oder Verzeichnis
Von inu im Forum C/C++Antworten: 5Letzter Beitrag: 01.11.07, 09:04 -
Datei oder Verzeichnis?!
Von Laxans im Forum PHPAntworten: 1Letzter Beitrag: 12.10.04, 14:34 -
abfrage: datei oder verzeichnis auf ftp server
Von JoeyP im Forum PHPAntworten: 2Letzter Beitrag: 01.07.04, 13:02 -
Wie erstelle ich eine css datei, oder kann mir einer eine css Datei erstellen
Von Jack iZ BaQ im Forum CSSAntworten: 2Letzter Beitrag: 01.02.04, 22:11





Zitieren
Login





