... the user friendly GPS tool


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Zeichensatzproblem beim Format WebPage
#1
Wenn in den Wegpunktnamen Umlaute sind schaut die Darstellung verbastelt aus, wenn man die Datei von der Festplatte öffnet.

Ansehen kann man sich das wenn man diese Datei "korrigiert20120103_Leimbach_Tiefenort_Leimbach.html"
aus http://forum.routeconverter.com/thread-1...l#pid11192 downloadet, abspeichert und von der Platte im Browser öffnet (file:///…).

In der Datei heisst es:
Code:
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
der Inhalt der Datei sollte also UTF-8 sein. Ich dachte mir auch nichts schlimmes, arbeitet Java doch intern mit UCS-2 a.k.a. UTF-16.

Der Webseitenquelltext ist aber kein UFTF-8, es ist iso8859-1, was man ganz einfach daran sehen kann, dass es so mit recode repariert werden kann:

Code:
cat korrigiert20120103_Leimbach_Tiefenort_Leimbach.html| recode iso8859-1..utf8 > korrigiert20120103_Leimbach_Tiefenort_Leimbach.recoded.html

Das Problem tritt vielleicht auch auf, wenn die Datei von einem Webserver bezogen wird, denn dann "sticht" m.E. der Content-Type-Header:
Code:
Content-Type:text/html; charset=UTF-8
oder wie auch immer der Serververwalter das gesetzt hat. Direct von einem Webserver, der für den Download
Code:
Content-Type:text/html; charset=iso8859-1
setzt sollte es gehen, nach dem abspeichern nicht mehr.

Da die meisten Webserver und Webspaces heutzutage unter UTF-8 laufen, bin ich für die Beibehaltung des
Code:
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
und das Recodieren des Inhalts der Datei.

Anbei die Datei aus dem anderen Thread und die recoded-Variante.


Attached Files
.html   korrigiert20120103_Leimbach_Tiefenort_Leimbach.html (Size: 15.33 KB / Downloads: 575)
.html   korrigiert20120103_Leimbach_Tiefenort_Leimbach.recoded.html (Size: 15.33 KB / Downloads: 659)
Reply
#2
(19.12.2013, 12:05)Holzweg Wrote: In der Datei heisst es:
Code:
<meta http-equiv="content-type" content="text/html; charset=utf-8"/>
der Inhalt der Datei sollte also UTF-8 sein. Ich dachte mir auch nichts schlimmes, arbeitet Java doch intern mit UCS-2 a.k.a. UTF-16.

Das stimmt, doch sobald die Zeichen die Java VM verlassen kann man Fehler machen. Ich habe gerade eine neue Vorabversion hochgeladen, die alle Texte fürs Webpage-Format in UTF-8 kodiert. Könntest Du mal testen, ob das besser klappt?
--
Christian
Reply
#3
Sorry, das war meine letzte Aktion vor dem Weihnachtsurlaub, und an Sylvester hat mich dann die Grippe dahingerafft. Bin gerade den zweiten Tag im Büro.

Testergebnis bezieht sich auf:
Quote:RouteConverter 2.12-SNAPSHOT-396 from 21. Januar 2014 on Oracle Corporation Java 1.7.0_25 (64-bit) and Linux 3.11.0-15-generic amd64 with 1793 MByte heap

Testergebnis:
1. Das Umlautproblem ist beseitigt, wenn man die Datei als file:///pfad/zur/Datei.html öffnet.

2. Das Umlautproblem ist beseitigt, wenn man die Datei als http://webserver.tld/pfad/zur/Datei.html von einem Linuxwebserver mi UTF-8 default encoding öffnet.

getestet mit aktuellen Cr, FF, IE auf Win7
getestet mit aktuellen Cr, FF auf Ubuntu 13.10 Saucy

Danke sehr fürs fixen! Smile
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)