kostenloser Webspace werbefrei: lima-city


QT:Kurze Frage zum Konvertieren eines QStrings von Ascii

lima-cityForumProgrammiersprachenC/C++ und D

  1. Autor dieses Themas

    sebastian-online

    sebastian-online hat kostenlosen Webspace.

    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

  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. hackyourlife

    Moderator Kostenloser Webspace von hackyourlife

    hackyourlife hat kostenlosen Webspace.

    Vermutung: du meinst eher sowas:
    const char* raw = "ä";
    QString test = QString::fromUtf8(raw);
    (Quelle)

    Das ist natürlich ungetestet.

    Beitrag zuletzt geändert: 14.1.2015 16:10:10 von hackyourlife
  4. Autor dieses Themas

    sebastian-online

    sebastian-online hat kostenlosen Webspace.

    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
  5. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!