Mal wieder Umlaute



  • Moin Leute!

    Hab folgendes Problem: Ich speichere Strings in einer Textdatei. Wenn ich die ganze Datei auslese und auf dem Bildschirm ausgebe, erscheinen die Umlaute wieder richtig; so weit so gut.

    Nun habe ich eine Funktion im Programm, die es mir ermöglichen soll, die gesamte Datenbank an Strings auszulesen und in eine XML Datei zu schreiben. Das einzige, was mich von einer schönen XML Datei trennt, ist, dass die Umlaute nicht richtig angezeigt werden. Wie bewerkstellige ich das? Ich hab ja grad schon die Suche angeschmissen, aber das half mir alles nicht, weil da immer von char-Arrays die Rede war.

    Mr. B



  • Mr. B schrieb:

    Hab folgendes Problem: Ich speichere Strings in einer Textdatei. Wenn ich die ganze Datei auslese und auf dem Bildschirm ausgebe, erscheinen die Umlaute wieder richtig; so weit so gut.

    Bei allen Umlautfragen (oder anderen "exotischen" Zeichen) ist zunächst immer wichtig was denn "richtig" bedeutet. Umlaute sind von vielen Faktoren abhängig, welches OS, welche Landeseinstellungen, welcher Zeichensatz...? Nur wenn wir das wissen, können wir wirklich helfen. Sonst eigentlich nur raten.

    Mr. B schrieb:

    Nun habe ich eine Funktion im Programm, die es mir ermöglichen soll, die gesamte Datenbank an Strings auszulesen und in eine XML Datei zu schreiben. Das einzige, was mich von einer schönen XML Datei trennt, ist, dass die Umlaute nicht richtig angezeigt werden. Wie bewerkstellige ich das?

    Ich rate mal in eine Richtung: Wenn Du z.B. Windows benutzt, mit den normalen deutschen Einstellungen, und der erste Teil Beiner Beschreibung (die richtige Ausgabe) auf einem Konsolenfenster war, so könnte das bedeuten das die Umlaute nicht in ISO-8859-1 (wahlweise auch -15) oder Windows-1252, den Windows-Encodings kodiert sind, sondern in Codepage 437 oder Codepage 850, den unter DOS verwendeten und in der Konsole meist angezeigten Zeichensätzen.

    Scheibt man diese dann in eine Datei die man im Editor ansieht, so sehen die Umlaute in diesem meist falsch aus, weil dort halt das Windows-Encoding angezeigt wird. Bei XML kommt aber noch hinzu, das die Encoding-Angabe am Anfang des Dokumentes auch zum Umlaut-Encodung passen sollte, oder Du eben Umlaute in ihre Entity-Schreibweise (also z.B. Ü=Ü) konvertieren solltest.

    Je nachdem ob Du womöglich unter deinem OS ein Unicode-Encoding wie UTF-8 oder ähnliches verwendest, kann es aber auch noch beliebig anders sein.



  • Ja, benutze Windows XP mit deutscher Tastatur.
    Wenn ich "ä" schreibe, sehe ich inna XML und im editor ein anführungszeichen.
    inna XMl datei hab ich den ISO-8859-1 standard.

    Mr. B



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum WinAPI verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.



  • Keiner ne Idee?



  • BabylonischeVerwirrtheit schrieb:

    Scheibt man diese dann in eine Datei die man im Editor ansieht, so sehen die Umlaute in diesem meist falsch aus, weil dort halt das Windows-Encoding angezeigt wird. Bei XML kommt aber noch hinzu, das die Encoding-Angabe am Anfang des Dokumentes auch zum Umlaut-Encodung passen sollte, oder Du eben Umlaute in ihre Entity-Schreibweise (also z.B. Ü=Ü) konvertieren solltest.

    Und wie konvertiere ich das? Ich hab doch keine Ahnung...

    Mr. B


Anmelden zum Antworten