Wie kann man eine FTP-Verbindung zu einem Webserver herstellen?
Nach Erstellung eines URL-Objektes wird in der Methode show() mit Hilfe von openStream() ein InputStream erzeugt,
dessen Inhalt mit Hilfe eines InputStreamReaders in einen
BufferedReader eingelesen wird.
Das gewusst wie liegt
hier bei der Form des URL-Strings. Er muss in der Form
<protokoll><benutzername>:<passwort>@<hostname>[/verzeichnis/]
angegeben werden. Wichtig ist beim Aufruf eines Verzeichnisses der
'/' hinter dem Verzeichnisnamen.
Also z.B.:
ftp://willi:passwort@javabeginners.de/verzeichnis/
Die Methode readLine()
des
BufferedReaders gibt mittels einer while-Schleife die Informationen
über den Inhalt des aktuellen Verzeichnisses Zeile für
Zeile aus.
Exceptions, die durch eine falsche URL oder
Eingabe-Ausgabe-Probleme geworfen werden könnten, werden
innerhalb eines try-catch-Blockes abgefangen.
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.MalformedURLException;
import java.net.URL;
public class FTPVerbindung {
public static void main(String[] args) {
try {
URL url = new URL("ftp://willi:passwort@javabeginners.de/verzeichnis/");
show(url);
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
private static void show(URL url) throws IOException {
InputStream in = url.openStream();
BufferedReader buff = new BufferedReader(new InputStreamReader(in));
String s;
while ((s = buff.readLine()) != null) {
System.out.println(s);
}
}
}
Wenn Ihnen javabeginners.de gefällt, freue ich mich über eine Spende an diese gemeinnützigen Organisationen.