Die Diskussion ist zwar schon zwei Monate alt, mir ist das Thema aber neu: Man kann den Windows-Standard-Editor notepad.exe durcheinanderbringen, indem man die Kühnheit besitzt einen Text zu schreiben, zu speichern und wieder zu öffnen:
- Textdokument anlegen
- den folgenden Text (ohne Anführungszeichen) eingeben: „this app can break“
- die Datei speichern
- die Datei wieder öffnen
- siehe Screenshot
Ursache für dieses merkwürdige Verhalten ist wahrscheinlich ein Fehler in der Erkennung des verwendeten Zeichensatzes. Notepad versucht beim Öffnen, den Text mit chinesischen Schriftzeichen wiederzugeben. Man könnte ein Osterei vermuten. Dagegen spricht aber, daß der chinesische Text anscheinend keinen Sinn ergibt, außerdem kann man auch mit anderen Zeichenketten — z. B. „xxxx xxx xxx xxxxx“ — diesen Fehler provozieren.
Ich konnte das nicht glauben, aber sowohl auf einem Windows 2000 als auch auf XP ‚funktioniert‘ dieser Fehler. Mal sehen was Vista bringt…
Ja, funktioniert aber nur, wenn man den Text ohne Zeilenumbruch eingibt. Mit Gvim oder einem Hexeditor geöffnet, sieht man das Problem: Notepad schreibt kein CR/LF ans Ende. Sobald die Datei einen solchen enthält, erkennt Notepad dieses wieder als ASCII. Die neun Kästchen (statt 18 Characters) könnten aber auch der Versuch sein, den Text als UTF16 darzustellen…
Ja, das wird auf der verlinkten Seite auch diskutiert. Das klappt allerdings nicht mit allen Zeichenkombinationen, es gibt auch welche bei denen der fehlende Zeilenabschluß nicht stört. Aber was heißt ’stört‘: Andere Editoren kommen damit schließlich auch klar…