QT:Kurze Frage zum Konvertieren eines QStrings von Ascii
lima-city → Forum → Programmiersprachen → C/C++ und D
anhieb
code
dokumentation
durchsuchen
falsch eingestellten zeichensatz
format
funktion
http
internet
namensgebung
quelle
string
studio
test
umlaut
url
vermutung
-
Hallo,
im Internet habe ich schon fast alles durchsucht. Aber ich bekomme keinen Ascii-String in einen UTF8-QString (od. Ä. mit Umlauten) umgeformt.
Was ich probiert habe:
QString test = "ä"; test = QString::fromAscii(test.toAscii());
mit und ohne test = test.toUtf8();
QString test = "ä"; test = QString::fromAscii(test.toLocal8Bit().data(),test.length());
mit und ohne test = test.toUtf8();
-Es wird absolut nichts konvertiert. Wenn man toUtf8() verwendet, wird der String 2 mal ausgegeben.
-Es liegt auch nicht im falsch eingestellten Zeichensatz in Visual Studio (mit QT 4.5.2), denn
QString test = "ä" funktioniert.
Vielen Grüße und vielen Dank
Sebastian
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Hallo hackyourlife!
Vielend Dank. Es lief auf Anhieb. Hier ist die Funktion, um von einem QString in einen QString zu kommen:
QString ascii2utf8(QString str) { return QString::fromUtf8(str.toLocal8Bit().data()); }
ascii2utf8("ä"); liefert ein "ä".
Und ich hatte beim Durchsuchen der Qt-Dokumentation gedacht, dass die Funktion fromUtf8() dafür da wäre, von UTF8 in ein voreingestelltes Format zu gelangen. Die Namensgebung in Qt ist auch alles andere als intuitiv...
Viele Grüße
Sebastian -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage