QT與C++資料型別轉換
Qt的資料型別與標準c++是不一樣的,在開發的時候,必然會涉及到很多資料型別的轉換。早已厭倦了百度QString轉QByteArray,QByteArray轉char*,QString轉string…。Qt的第一篇文章,就先來總結一下我用過的資料之間的轉換。
1、QString轉QByteArray
QByteArray byte;
QString string;
byte = string.toLatin1();
2、QByteArray轉QString
QByteArray byte;
QString string;
string = QString(byte);
3、QString轉String
QString string;
std::string str;
str = string.toStdString();
4、String轉QString
QString string;
std::string str;
string = QString::fromStdString(str);
5、QByteArray轉char *
char *ch; //不能定義成ch[n],陣列和指標不一樣;
QByteArray byte;
ch = byte.data();
6、char *轉QByteArray
char *ch;
QByteArray byte;
byte = QByteArray(ch);
7、QString轉char *
QString string;
char *ch;
ch = string.toLatin1.data();
8、char *轉QString
char *ch;
QString string= QString(QLatin1String(ch));
9、QHostAddress轉QString
QHostAddress address;
QString string = address.toString();
10、QString轉QHostAddress
QString string;
QHostAddress address(string);
11、QString轉unsigned char
QString string;
bool ok;
unsigned char uch = string.toInt(&ok, 16);
12、unsigned char轉QString
unsigned char uch;
QString string = QString::number(uch,16);
13、int轉QString
int m;
QString string;
string=QString::number(m);
14、QString轉int
QString string;
int m;
m=string.toInt();