Hallo, nachdem ja auch SuSE auf UTF-8 umgesetellt hat (und RedHat seit langem) muss ich mich auchmal damit beschäftigen. Bei GUI-Anwendungen ist es ja einfach: Qt, Gtk und Java stellen alle Mechanismen bereit so dass man zumindest bei Qt und Java (Gtk kenne ich nicht so gut) kaum was falsch machen kann. Anders bei Konsolenprogrammen, die nur die Standardbibliothek für C und C++ verwenden. Ich habe da vor einigen Tagen mal im Internet rumgesucht und nirgends was wirklich gutes gefunden. Was ich gesehen habe, gibt es zwei Möglichkeiten: 1. Im ganzen Programm ggf. UTF-8 (d. h. die Zeichenkodierung der eingestellten locale) verwenden: * Wie gebe ich einen Text in Tabellenform aus? Muss ich mir da wirklich alles selber schreiben? printf("%-20.20s") beispielsweise zählt ja Bytes und keine Zeichen. * Muss ich mir selber ein strlen() schreiben, wenn ich die Zeichen- zahl statt die Bytezahl haben will? * Stringbearbeitung (z. B. Ersetzen von "ä" durch "ö") wird noch mühseliger da ein Zeichen kein Zeichen mehr ist. Auch std::string wird ziemlich unbrauchbar für diesen Zweck. * Was gibt es sonst noch zu beachten? 2. Im Programm wchar_t verwenden und in C++ std::wstring. Scheint wohl das einzig halbwegs vernünftige zu sein, da dann wprintf() usw. wieder funktioniert. Wie sieht ihr das? Gruß, Bernhard