HTML-Dateien aus dem Internet auslesen
Dimitri Rettig
- java
Hallo,
ich möchte Dateien aus dem Internet auslesen. Ich gehe wie folgt vor:
private void parse(String location)
{
URL url = null;
// RefParseCallback ist meie eigene Klasse. Sie erweitert HTMLEditorKit.ParserCallback
RefParserCallback callback = new RefParserCallback();
InputStream in = null;
InputStreamReader reader = null;
// die try-catch-Blöcke wurden übersichtshalber weggelassen.
url = new URL(location);
in = url.openStream();
reader = new InputStreamReader(in);
new ParserDelegator().parse(reader, callback, false);
}
Leider wird immer, wenn diese Methode aufgerufen wird, javax.swing.text.ChangedCharSetException geworfen. Ich habe mit
reader = new InputStreamReader(in, charset);
versucht, den Zeichensatz vorzugeben, wobei ich für charset verschiedene Zeichensätze eingesetzt habe. Nützt nix.
Ich hoffe auf baldige Hilfe, denn ich habe mir vorgenommen, sich nicht eher schlafen zu legen, bis das Problem beseitigt ist.
Mit freundlichen Grüßen
Dimitri Rettig
P.S.: Ich gehe schon mal den Kaffee stellen ...
Hallo,
Kaffee noch heiß??
ich möchte Dateien aus dem Internet auslesen. Ich gehe wie folgt vor:
InputStreamReader reader = null;
CharSet = null
// die try-catch-Blöcke wurden übersichtshalber weggelassen.
reader = new InputStreamReader(in);
CharSet = default;
ergo = changed -> Das Öffnen des Readers mit null ist der Fehler??
new ParserDelegator().parse(reader, callback, false);
}Leider wird immer, wenn diese Methode aufgerufen wird, javax.swing.text.ChangedCharSetException geworfen. Ich habe mit
Kannst Du das mit den try - catch - Blöcken so gestakzeb, dass gleich
InputStreamReader reader = new InputStreamReader(in);
geöffnet wird?
viele Grüße
Axel
Hallo,
Kaffee noch heiß??
wohl doch nicht ;-))
Allerdings ist meine Lösung wohl doch nicht die richtige. Es funktionierte bei mir nur mit ignoriertem CharSet, warum auch immer.
new ParserDelegator().parse(reader, callback, true);
viele Grüße
Axel
Hallo,
Kaffee noch heiß??
wohl doch nicht ;-))
... ich finde, Kaffee und Java passen einfach nicht zusammen ...
Allerdings ist meine Lösung wohl doch nicht die richtige. Es funktionierte bei mir nur mit ignoriertem CharSet, warum auch immer.
Ay Caramba!
new ParserDelegator().parse(reader, callback, true);
Ich dachte, es sei genau anders: true für CharSet beachten, false für CharSet ignorieren.
Vielen Dank!
Mit freundlichen Grüßen
Dimitri Rettig
Hallo,
Ay Caramba!
new ParserDelegator().parse(reader, callback, true);
Ich dachte, es sei genau anders: true für CharSet beachten, false für CharSet ignorieren.
Ja, manchmal sind die Gedankengänge der Sun-Entwickler wohl ziemlich um die Ecke. Es war da wahrscheinlich auch schon ca. 2:00 Uhr.
http://java.sun.com/j2se/1.3/docs/api/javax/swing/text/html/parser/ParserDelegator.html
public void parse(Reader r,
HTMLEditorKit.ParserCallback cb,
boolean ignoreCharSet)
ignoreCharSet = false = Beachte das CharSet!
Die Negation der Negation.
http://www.andy-junker.de/negation.html
viele Grüße *g*
Axel