Conversion de type

D'entier en chaine

si l'entier est monint sa correspondance en chaine (QString) s'obtient par :

QString::number(monint)

De chaine en entier

QString str1="128";

int num1 = str1.toInt(&ok); // ok == true et conversion réussie : num1 ==128

Remarque : Le même principe existe pour les autres types de variables numériques

      • toLong()
      • toShort()
      • toUInt()
      • toUShort()
      • toULongLong()

Forcer un type en char *

Si la variable est déclarée :

    unsigned char * filecontent;

Mais que la fonction read nécessite un char *, on peut imposer le type :

file.read((char *)filecontent, 10000);


D'un QString en *char

QString machaine;

machaine="Bonjour";

qDebug(machaine.toStdString().c_str(); //le parametre de la fonction qDebug doit être un pointeur de carcatère.


D'un caractère en valeur ASCII

int ascii;

QString motInitial="test";

ascii=motInitial[o].toLatin1();//ascii prend la valeur 116

Dans le sens inverse

ascii=ascii-0x20;

motInitial[0]=ascii; //le premier caractère est devenu T