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);
}
}
}
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);
}
}
}