Hallo.
Ich habe ein kleines Programm zum Herunterladen von Textdokumenten geschrieben, das eigentlich ganz gut funktioniert. Bloß mit Fehlermeldungen bin ich nicht zufrieden.
Zurzeit gebe ich einfach
aus. Die Fehlermeldungen sehen ungefähr so aus:
ist nur
angegeben.
Kann ich da etwas machen?
Hier mein Code:
Ich habe ein kleines Programm zum Herunterladen von Textdokumenten geschrieben, das eigentlich ganz gut funktioniert. Bloß mit Fehlermeldungen bin ich nicht zufrieden.
Zurzeit gebe ich einfach
Code:
Exception.toString()
Stattdessen hätte ich gerne:java.net.UnknownHostException: example.com
Das Problem ist, dass ich keine genaue Liste der möglichen Exceptions habe. In der Dokumentation vonHost unbekannt: example.com
Code:
HttpURLConnection
Code:
IOException
Kann ich da etwas machen?
Hier mein Code:
Java:
import java.io.IOException;
import java.io.InputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import java.util.Scanner;
public class Download {
public static void main(String[] args) {
String dlUrl, dlText;
if (args.length > 0) { //Kommandozeilenparameter angegeben
dlUrl = args[0];
} else { //Keine Kommandozeilenparameter, frage nach
System.out.println("Bitte URL eingeben:");
Scanner inStrSc = new Scanner(System.in);
dlUrl = inStrSc.next();
}
System.out.println("Lade: " + dlUrl); //Nochmal die Adresse
try {
dlText = download(dlUrl); //herunterladen
System.out.println();
System.out.println(dlText); //ausgeben
System.out.println();
} catch (IOException e) {
System.err.println(e.toString()); //Fehlermeldung
}
}
private static String download(String address) throws IOException {
URL url = new URL(address);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setDoInput(true);
InputStream inStr = con.getInputStream();
int b;
StringBuffer buffer = new StringBuffer();
while ((b = inStr.read()) != -1)
buffer.append((char) b);
return buffer.toString();
}
}
Zuletzt bearbeitet: