Seite 1 von 1
Zeichenkodierung (fromUtf8)
Verfasst: 26. Februar 2013 13:15
von Klaus Reinke
Ich versuche Utf8-Strings in QTextEdit korrekt darzustellen. Direkt funktioniert es ja auch, siehe
Zeile 19. Mein Linux-System ist auf Utf8 eingestellt.
Meine Ausgabe des Programmes im Anhang.
mfg Klaus
Re: Zeichenkodierung (fromUtf8)
Verfasst: 26. Februar 2013 18:28
von veeman
Es kommt wohl auf den verwendet Compiler (btw dessen Einstellung) an, wie dieser die Strings übersetzt.
Im Anhang die Ausgabe unter Windows/VS2010 mit dem selben Source-Code.
Offensichtlich interpretiert dein Compiler (gcc?) jeden String als Utf8.
Qt hingegen geht standardmässig von einem Ascii-String aus, sodass bei dir die explizite Konvertierung funktioniert und bei mir genau umgekehrt.
//Edit:
Hab noch dass
hiergefunden:
char plainString[] = “hello”; //Local encoding, whatever that may be.
wchar_t wideString[] = L”hello”; //Wide characters, usually UTF-16 or UTF-32.
char utf8String[] = u8“hello”; //UTF-8 encoding.
char16_t utf16String[] = u”hello”; //UTF-16 encoding.
char32_t utf32String[] = U”hello”; //UTF-32 encoding
Mfg veeman
Re: Zeichenkodierung (fromUtf8)
Verfasst: 26. Februar 2013 19:09
von Christian81
Deswegen ja nur ASCII-Strings benutzen und den Rest über tr().
Unter Linux ist die Kodierung per default UTF-8 - da funktioniert also alles korrekt. Nur unter Windows dann wieder nicht... M$ eben.