kostenloser Webspace werbefrei: lima-city


Encoding beim Auslesen von Webseiten

lima-cityForumProgrammiersprachenJava

  1. Autor dieses Themas

    fr3z3r

    fr3z3r hat kostenlosen Webspace.

    Hallo zusammen,

    ich lese per
    BufferedReader rd = new BufferedReader(
    						new InputStreamReader(con.getInputStream()));
    den HTML-Code einer Webseite ein und will diesen dann in meinem Programm weiterverwenden. Bei deutschen Webseiten funktioniert dies auch Problemlos... Jedoch wenn ich Webseiten die das "UTF8" Encoding beinhalten öffnen will, werden Umlaute als "ü" usw. ausgegeben... Gibt es irgend eine Möglichkeit, dass Java diese automatisch richtig umwandelt oder muss ich diese immer manel umwandeln?

    Gruss
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. Moin,

    der Konstruktor vom InputStreamReader nimmt auch einen Parameter für's Encoding entgegen.
    Dort kannst Du ja mal ISO-8895-1 mitgeben und testen, ob das funktioniert.

    Gruß,
    Pawnee

    Beitrag zuletzt geändert: 12.1.2010 20:30:28 von pawnee
  4. Autor dieses Themas

    fr3z3r

    fr3z3r hat kostenlosen Webspace.

    Ich habe nun folgende Methode entdeckt die automatisch das richtige Encoding wählt:
    URL url = new URL(elem.toString());
    URLConnection con = url.openConnection();
    
    BufferedReader rd = new BufferedReader(new InputStreamReader(con.getInputStream(), con.getContentEncoding()));


    Mit con.getContentEncoding() wird automatisch das Encoding der Webseite gewählt und dann an den InputStreamReader weitergegeben.
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!