Umlaute in fstream



  • Ich lerne gerade C++ und wollte eine Textdatei mit folgendem Code in ein
    Program einlesen und wieder ausgeben:
    int main()

    {

    ifstream file("chartest.txt");

    char ch;

    while (file.get(ch))

    cout << ch << " : " << (int)ch << endl;

    return 0;

    }

    Die Umlaute werden aber mit den falschen ASCII Codes eingelesen. Aber für
    mich unlogischerweise richtig eingelesen wenn ich sie über "cin" eingebe.

    Gibt es eine möglichkeit sie richtig einzulesen.

    danke im voraus

    shino



  • Die Konsole arbeitet mit ASCII-Codes (DOS-Zeichentabelle), der Windows-Editor mit ANSI-Codes (Windows-Tabelle) - da sind die Zeichen jenseits der \x7F anders auf die Char-Werte verteilt.


Anmelden zum Antworten