Avatar billede pblv Nybegynder
27. december 2005 - 18:00 Der er 7 kommentarer

ö ø Æ osv i XML

Hejsa,

Jeg har en form, hvor folk kan skrive tekster i. Den laver automatisk tegn som á, æ, ö osv om til ö, ø, Æ osv.

Mit problem er, når jeg lavet et output til en XML-fil, så laver den fejl, fordi den ikke må skrive tegn som ö, ø, Æ.

Jeg har lavet den, så den selv konverterer f.eks. Æ til Æ, men der er jo mange af den slags tegn, og detmed bliver det noget rod. Findes der en autokonverterings-ting til den slags?
Avatar billede mik789 Nybegynder
01. januar 2006 - 17:52 #1
du kan prøve om du kan bruge min, som ligge på:

http://dev.e-tidsskrift.dk/txt2code.html

I selectboksen skal du vælge "XML". Den konverterer så specialtegn til decimalværdier som er tilladt i xml i stedet for til html entities (som ikke er tilladt andet end ganske få).
Avatar billede mik789 Nybegynder
01. januar 2006 - 18:00 #2
men den er ikke lavet til at konvertere fra html-entities til decimalværdier, men fra specialtegn til decimalværder. Så hvis du vil konvertere f.eks. Åse Sørensen, så dur det ikke. Men hvis du vil konverete Åse Sørensen, dur det, og du får Åse Sørensen. Du kan evt. bare rette det script der konverterer specialtegnene i din form, så det indsætter decimalværdier i stedet for htmlentities. Du kan se værdierne her: http://dev.e-tidsskrift.dk/tegntabel.html
Avatar billede mik789 Nybegynder
01. januar 2006 - 18:05 #3
eller du kan angive utf-8 både som charset i dit html dokument (med formen) og som encoding i dit xml dokument; så slipper du jo helt for at skulle konveretere.
Avatar billede janegil Nybegynder
04. januar 2006 - 14:11 #4
iso-8859-1 skulle også være nok til å ta danske bokstaver
Avatar billede mik789 Nybegynder
05. januar 2006 - 08:28 #5
ja, iso-8859-1 rækker sikkert nok. Men når vi taler om folks navne kan der godt være folk med fremmedartede navne der indeholder sammensatte bogstaver der ligger uden for denne. Eks: (nu prøver jeg om Eksp kan vise dem uden videre) - š i slaviske navne. Eller i tekst hvor der bruges buede/skrå dobbeltanførselstegn (ret almindeligt), nemlig: “ ” - eller eurotegnet: €.

Disse og flere ret almindelige tegn ligger uden for iso-8859-1, se: http://www.cs.tut.fi/~jkorpela/chars.html#latin1

Her kan man altså - hvis man vil - garderer sig med utf-8 som bare har det hele.
Avatar billede janegil Nybegynder
05. januar 2006 - 09:41 #6
Jo da, men uTF-8 eller ikke, så skal man nok filtrere en del underlige tegn. Ønsker vi fx at at " skal oppfattes som er annet tegn enn ” ? Og blir vi glad hvis en kunde registrerer seg som იოსებ ჯუღაშვილი ?
Avatar billede mik789 Nybegynder
05. januar 2006 - 10:25 #7
nej, men hvis der er valgt utf-8 er der heller ingen grund til at et indtastet navn skulle give et output med html-entities. Fordelen ved unicode er at det er standard. Det giver meget bedre mulighed for en direkte repræsentation af tekst på forskellige sprog end vi har set tidligere. Personligt går jeg ind for at internettet bliver bedre til at repræsentere globale forskelle frem for at ensrette alt i et meget begrænset amerikansk ASCII tegnsæt.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester