org.xml.sax.SAXParseException: Character conversion error:
"Unconvertible UTF-8 character beginning with 0xf8" (line number may be
too low).
Det må være noget med forskellige tegnsæt, men hvordan omformes de
danske specialtegn så de er legale i XML
MVH
Martin Bratbo
> Det må være noget med forskellige tegnsæt, men hvordan omformes de
> danske specialtegn så de er legale i XML
Udskriv alle tegn større end 127 som "&#" + tegnets værdi + ";".
Herved er din XML fil gyldig i alle tegnsæt.
--
Thorbjørn Ravn Andersen
http://unixsnedkeren.dk/ravn
> Jeg har tidligere prøvet med æ,ø og å.
> Hvilket ikke virkede.
Nej, det kræver at du husker at referere til en HTML DTD. Den skal så
også være tilgængelig for de XML-parsere der skal behandle din XML.
Du ved, at Internet Explorer kan vise XML-filer og fortælle dig hvis
der er noget galt?
<?xml version="1.0" encoding="ISO-8859-1"?>
...
...
De fleste i DK bruger ISO-8859-1.
Eller brug (min anbefaling):
<?xml version="1.0" encoding="UTF-8"?>
of få din editor til at gemme i UTF-8.
Hvorfor synes jeg det ? Fordi ISO-8859-1 stort set kun dur til noget
Vesteuropa. UTF-8 supporter alle sprog, og mange meget eksotiske oveni.
Programmer som ikke supporter UTF-8 (eller rettere: Unicode) ordentligt
bør identificeres og spærres inde :)
MVH
Søren
--
Fjern de 4 bogstaver i min mailadresse som er indsat for at hindre s...
Remove the 4 letter word meaning "junk mail" in my mail address.
> Programmer som ikke supporter UTF-8 (eller rettere: Unicode) ordentligt
> bør identificeres og spærres inde :)
Hmm, er der egentlig nogen grund til at benytte Unicode hvis man nu
laver noget på dansk? Selvfølgelig er det smart, hvis man er
interesseret i hele verden som målgruppe, men det er man måske ikke
altid? Så længe man bare angiver og benytter kodning konsistent, må det
vel være OK? Der er vel også et overhead forbundet med at benytte
Unicode (er der ikke noget med at hvert tegn fylder 2 bytes mod
"normalt" 1?)
Mvh. Kasper
--
Besøg mig på nettet: http://www.kaspershjemmeside.dk
> Thorbjoern Ravn Andersen wrote:
>
>> Martin Bratbo <mar...@bratbo.dk> writes:
>>
>>
>>> Det må være noget med forskellige tegnsæt, men hvordan omformes de
>>> danske specialtegn så de er legale i XML
>>
>>
>>
>> Udskriv alle tegn større end 127 som "&#" + tegnets værdi + ";".
>>
>> Herved er din XML fil gyldig i alle tegnsæt.
>>
> Alternativt, så skriv den encoding du bruger i xml tingesten, f.x.:
>
> <?xml version="1.0" encoding="ISO-8859-1"?>
> ...
> ...
>
> De fleste i DK bruger ISO-8859-1.
>
> Eller brug (min anbefaling):
> <?xml version="1.0" encoding="UTF-8"?>
>
> of få din editor til at gemme i UTF-8.
>
> Hvorfor synes jeg det ? Fordi ISO-8859-1 stort set kun dur til noget
> Vesteuropa. UTF-8 supporter alle sprog, og mange meget eksotiske oveni.
> Programmer som ikke supporter UTF-8 (eller rettere: Unicode) ordentligt
> bør identificeres og spærres inde :)
>
> MVH
> Søren
Tricket med at encode alle tegn over 127 er en robust løsning, der så
vidt jeg kan se virker upåklageligt. Der er andre en mig selv der skal
vedligeholde de tekstfiler der er ophav til XML'en. Filerne er
tekstfiler der parses af en javacc parser, hvis der var specielle krav
til tegnsætinstillignen, ville det give en masse fejl og generere ekstra
supportbehov.
MVH
Martin bratbo
Overheadet er negligerbart indtil andet er bevist.
--
Jonas Kongslund
> det vel være OK? Der er vel også et overhead forbundet med at benytte
> Unicode (er der ikke noget med at hvert tegn fylder 2 bytes mod
> "normalt" 1?)
Ja. Derfor benytter man UTF-8 til at gemme det med.
Hvis enten pladsforbrug eller cpukraft er en størrelse der skal tages
hensyn til, bør man vælge noget andet end XML.
> Hvis enten pladsforbrug eller cpukraft er en størrelse der skal tages
> hensyn til, bør man vælge noget andet end XML.
Du har en god pointe der. XML's styrker ligger andre steder :-)
Betyder dette at det i princippet er fjollet, at XML overhovedet er
tilladt i andre encodings?
> > Ja. Derfor benytter man UTF-8 til at gemme det med.
> OK - jeg er åbenbart ikke klar over hvad UTF-8 er, havde blot læst det
> som synonymt med unicode - beklager.
Ingen årsag. UTF-8 er en indkodningsform af Unicode som benytter 1-3
bytes til at repræsentere et 16-bits unicodetegn. Dens hovedforce er
at tegn under 127 (US-ASCII) ikke skal specialbehandles, hvorfor at
amerikanere kan bruge det uden yderligere dikkedarer.
> Betyder dette at det i princippet er fjollet, at XML overhovedet er
> tilladt i andre encodings?
Smagssag. XML-standarden tillader kun ganske få indkodninger. De
enkelte parsere kan sagtens tilbyde flere.
> OK - jeg er åbenbart ikke klar over hvad UTF-8 er, havde blot læst det
> som synonymt med unicode - beklager.
Unicode er en definition der giver talværdier til tegn (glyffer?).
Der er fx 65 det latinske bogstav "stort A", mens 945 er lille græsk
alpha.
UTF-8 er en kodning af Unicode der er baseret på blokke af otte bits.
Et tegn kodes som et eller flere bytes. Stort A kodes med en byte med
værdien 65. Alpha kodes som to eller flere bytes.
UTF-8-kodningen har den fordel at den ikke fylder mere end ASCII hvis
man holder sig til ASCII-tegnene.
/L
--
Lasse Reichstein Nielsen - l...@hotpop.com
DHTML Death Colors: <URL:http://www.infimum.dk/HTML/rasterTriangleDOM.html>
'Faith without judgement merely degrades the spirit divine.'
Der ER da noget smart ved det :) - - nemlig at man ved at ens kode
virker i en anden kontekst også.
Ja, det er nok at være konsistent. Men alt for mange programmører (synes
jeg) bruger at ISO (som typisk er platform default på deres computere)
virker OK her, som en slags sovepude. De laver så kode fuld af
implicitte antagelser - f. eks. at et tegn er en byte - som i bedste
fald ikke er særlig genbrugelig. Og de beholder en dårlig vane ...
En ekstra byte på æ ø å ofrer jeg gerne .. det er je 0.00... nanoøre :)
> Hmm, er der egentlig nogen grund til at benytte Unicode hvis man nu
> laver noget på dansk? Selvfølgelig er det smart, hvis man er
Det giver dig fx adgang til euro-tegnet.