Seite 1 von 1

QChar zu einem Integer umwandeln?

Verfasst: 15. März 2014 09:00
von Supercomputer
Hallo,

ich arbeite aktuell an einem Projekt, in dem ich aus einem QTextEdit einen QString aus lese. Soweit klappt es auch gut.

Nun möchte ich so:

Code: Alles auswählen

    QString in = ui->textEdit->document()->toPlainText();
    QString out = 0;

    int unicode = 0;
    int ende = in.length();
    int index = 0;
    for (ende; index < ende; index++)
    {
        unicode = in[index].toInt();
        out = out + unicode;
        ui->textEdit_2->setText(out);
    }
Die einzelnen QCharwerte aus dem QString lesen, zu einem Interger umwandeln und in einem 2. QTextEdit ausgeben, um zu sehen, ob es geklappt hat.
Jedoch bekomme ich diesen Fehler:

error: 'class QCharRef' has no member named 'toInt'
unicode = in[index].toInt();

Etwas anderes, als "toInt();" weiß ich leider nicht, und komme daher nicht weiter.

Ich möchte die Werte zu Integern umwandeln, um sie in einem Switch zu prüfen.
Eine Frage bleibt dann noch, wie kann man einen Integer zu einem QChar umwandeln?

Mit freundlichen Grüßen

Supercomputer

Re: QChar zu einem Integer umwandeln?

Verfasst: 17. März 2014 06:25
von Christian81
QChar hat nunmal kein toInt() - was erwartest Du also? Ein QChar ist eine UTF-16 (unicode) Repräsentation des Zeichens - probiere es mal mit .unicode() - http://qt-project.org/doc/qt-4.8/qchar.html#unicode-2
Und ein Integer in einen String wandeln - siehe QString Doku http://qt-project.org/doc/qt-4.8/qstring.html

Re: QChar zu einem Integer umwandeln?

Verfasst: 18. März 2014 10:06
von Supercomputer
Das QChar keine .toInt() Funktion hat, habe ich bereits gelesen :?

Mein Ziel ist es einfach, z.B. den Wert eines "A" in eine Integer Variable zu speichern, so dass ich diese dann in einem Switch verwenden kann.
z.B.

Code: Alles auswählen

switch(unicodeinteger) //Hier der Wert des Zeichens
{
    case 1: (...)
    case 2: (...)
    (...)
}