» Web-Seiten schreiben » Internet
Am Samstag, 8. Juli 2006 08:06 schreibt mir ein Bekannter:
Hast du eine Ahnung was ich machen soll, damit die Texte, die ich in Yahoo bekomme nicht wie folgt dargestellt werden?
... Die Einladung zur auÃYerordentlichen Eigentümerversammlung möchten wir spätestens am Montag absenden...
US-ASCII
Die ersten Bürokommunikationseinrichtungen (Fernschreiber) arbeiteten mit einem Alphabet von 26 Buchstaben, 10 Ziffern, einigen Sonderzeichen und einigen Steuerzeichen, die für die Maschine und nicht für's Papier gedacht sind. Beim US-ASCII-Code sind das 7 Bit = 128 Zeichen und beim Baudot Code 5 Bit = 32 Zeichen.
ISO-8859-1
Die erste Hürde waren europäische Sprachen, die zwar den lateinischen Zeichensatz verwenden, ihn aber um nationale Sonderzeichen erweitern. Mit Bleistift und Papier malt man einfach Accents, Punkte, Háčeks, ... über die Buchstaben, aber auf dem Computer ist jedes dieser „diakritischen Zeichen” ein eigener Code. Für Westeuropa hat man einfach den US-ASCII-Code von 7 auf 8 Bit = 1 Byte, d. h. von 128 auf 256 Zeichen erweitert und nennt ihn „ISO-8859-1”. Ärgerlicherweise gibt es immer noch Computersysteme, die dieses 8. Bit einfach abschneiden, was dann zu folgender fehlerhaften Anzeige führen kann:
| Buchstabe | Ä | Ö | Ü | ä | ö | ü | ß |
|---|---|---|---|---|---|---|---|
| Falsche Anzeige | D | V | \ | d | v | | | _ |
Umlaute
Aus dem vorigen Jahrtausend sind deshalb nicht nur die Computer, sondern auch Bediener, die sich an „scheussliche Saetze gewoehnt haben, uebrig geblieben”. Sie empfehlen denjenigen, die diese Schreibweise stört, die Such- und Ersetzfunktion eines Textprogrammes zu benutzen, um die Umlaute zu rekonstruieren. „Das hatte ich zürst auch gedacht, daber dann wurde mir klar, dass man sötwas wie 'Teträder' nicht außchließen kann.”
Quoted Printable („QP”)
Eine bessere Lösung ist, wenn das verwendete Programm „Content-Transfer-Encoding:
quoted-printable” beherrscht, bei dem > 128 als „=Nummer”
und das Gleichheitszeichen selber als „=3D” dargestellt werden.
| Buchstabe | Ä | Ö | Ü | ä | ö | ü | ß |
|---|---|---|---|---|---|---|---|
| Quoted Printable (ISO-8859-1) |
=C4 | =D6 | =DC | =E4 | =F6 | =FC | =DF |
Unicode
In Europa musste man seit der Erfindung des €-Zeichens von ISO-8859-1 auf ISO-8859-15 umstellen, was manche Programme immer noch nicht beherrschen. Für Osteuropa hat man die Zeichen oberhalb von 128 anders belegt. So werden kyrillische Zeichen mit dem Zeichensatz „ISO-8859-5” dargestellt. Für arabische, singalesische, japanische und chinesische Zeichen braucht man wieder einen anderen Zeichensatz. Das erschwert es, mehrere Sprachen innerhalb eines Dokumentes darzustellen. Deshalb wurde der „Unicode” („UTF-16”) geschaffen, der mit 16 Bit = 2 Byte, d. h. 65.536 Zeichen alle Zeichen der Welt abdecken soll. Diejenigen, die bisher mit 7 Bit gut zurecht kamen, zeigten aber nur begrenzte Freude, weitere 9 Bit mitzuschleppen, die sie eigentlich gar nicht brauchen. Deshalb setzt sich immer mehr der UTF-8 Code durch, der eine variable Länge hat: Wenn man ein Zeichen in US-ASCII darstellen kann, wird 1 Byte verwendet, anderenfalls bis zu 3.
Fehler
Damit das funktioniert, müssen alle beteiligten Programme an geeigneter Stelle deklarieren, dass sie UTF-8 und nicht US-ASCII oder sonst was verwenden und sie müssen auch getestet werden, ob sie immer noch funktionieren, wenn manche Buchstaben mehr Zeichen brauchen als andere. Genau das wird aber gelegentlich vergessen und fällt auch nicht weiter auf, denn das Programm funktioniert ja im Ursprungsland der IT einwandfrei.
| Buchstabe | Ä | Ö | Ü | ä | ö | ü | ß |
|---|---|---|---|---|---|---|---|
| Falsche Anzeige (ISO-8859-1) |
Ã" | Ã- | Ão | ä | ö | ü | ÃY |
Das von dir geschickten Textfragment enthält offenbar UTF-8 Zeichen, wird aber als ISO-8859-1 angezeigt. Um zu beurteilen, wo genau der Fehler passiert ist, brauche ich die komplette E-Mail mit Header und nicht nur den Inhalt der Mail.
Header
Der Header einer Mail kann z. B. so aussehen wie die ersten 7 Zeilen der folgenden E-Mail:
From: Christian Barmala <cb@provider.example> To: FooBar GmbH <info@foobar.invalid> Subject: Bestellung Date: Tue, 11 Jul 2006 16:26:59 +0200 MIME-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Bitte stornieren Sie meine Bestellung. MfG CB
In Outlook Express kannst du dir die Original-E-Mail mit Header durch die Tastenkombination Ctrl-F3 anzeigen lassen. Wenn du eine alte E-Mail mit cut&paste in eine neue übernimmst, wird die komplette E-Mail einschließlich Header versendet, anderenfalls bekomme ich nur den Inhalt.





