Toon posts:

Java encoding probleem?

Pagina: 1
Acties:

Verwijderd

Topicstarter
Hallo,

Ik ben bezig om in java een tool te maken om HTML-pagina's uit te lezen en te verwerken.
Dat lukt allemaal prima behalve dat ik nu tegen een encoding probleem aanloop.
Althans dat denk ik uit zoekresultaten uit google etc. :P

Ik lees nu de pagina in in een StringBuffer en delen verwerk ik in mijn tool.

Nu loop ik bijv. tegen de volgende String aan in mijn verwerking:
I'm Scared, dit krijg ik binnen als: I'm Scared

Ik heb dit proberen op te lossen met URLDecoder.decode ( "UTF-8") .
Ook bij het inlezen heb ik dit probleem op proberen te lossen.
Nog steeds geen goed resultaat gekregen en ik blijf dus I'm Scared in mijn app binnen krijgen.

Ik weet het op dit moment ff helemaal niet meer hoe dit nu op te lossen.
Kan iemand mij een zet in de juiste richting geven?

  • remmelt
  • Registratie: Januari 2001
  • Laatst online: 30-11-2025
Hier: klik

[ Voor 6% gewijzigd door remmelt op 10-10-2008 15:15 . Reden: Link verbeterd ]


  • kzin
  • Registratie: Oktober 2003
  • Laatst online: 14:35
Heb je alleen problemen met &# ?, dus gaat <wel goed?

Als stringEscape dit niet ondersteund zul je zelf de string moeten escapen.
Zoek op &# , er volgen dan 1-4 cijfers afgesloten door een ;
Voordeel is dat je zelf kunt bepalen door wat je het speciale teken gaat vervangen. Ga je het ASCII/Unicode teken opzoeken, of vervang je het door b.v. een punt.
Meestal zijn het tekens die niet op het normale toetsenboard voorkomen, zoals een o met puntjes (ö), maar soms wordt het ook misbruikt. Er zitten b.v. een aantal tekens in die sprekend op een o lijken, maar het niet zijn. Sommige hackers gebruiken dit om je niet naar de postbank te sturen, maar naar een eigen domein.

  • BalusC
  • Registratie: Oktober 2000
  • Niet online

BalusC

Carpe diem

Verwijderd schreef op vrijdag 10 oktober 2008 @ 14:49:
I'm Scared, dit krijg ik binnen als: I&#39;m Scared
Dit zijn HTML entities.
Ik heb dit proberen op te lossen met URLDecoder.decode ( "UTF-8") .
Dit decodeert alleen URL-encoded strings, geen HTML entities.
Ik weet het op dit moment ff helemaal niet meer hoe dit nu op te lossen.
Kan iemand mij een zet in de juiste richting geven?
Apache Commons Lang StringEscapeUtils kan veel helpen, zie link van remmelt.

Verwijderd

Topicstarter
BalusC schreef op vrijdag 10 oktober 2008 @ 15:22:
[...]

Dit zijn HTML entities.

[...]

Dit decodeert alleen URL-encoded strings, geen HTML entities.

[...]

Apache Commons Lang StringEscapeUtils kan veel helpen, zie link van remmelt.
Ok thnx remmelt voor deze link!
Ook BalusC voor de bijbehorende uitleg ;)
Wat kan de java wereld soms toch makkelijk zijn he?! _/-\o_

  • Remus
  • Registratie: Juli 2000
  • Laatst online: 15-08-2021
Je zou ook kunnen overwegen om de pagina te parsen met de HTMLEditorKit parser met een zelf geschreven parser-callback. Daarmee heb ik op mijn werk een redelijk werkende HTML naar (plain) text conversie gemaakt.
Pagina: 1