字符串拼接:
QString str="test1";
str += "test2";
str += 'A';
str.append("test3");
qDebug() << str << endl;
QString-->char*:
char* MainWindow::QstringtoChar(QString str)
{
QByteArray ba2;
ba2.append(str); //也可以 ba2 = s2.toLatin1();
char *c2 = ba2.data(); //转成char*
qDebug()<<"str:"<<str<<"-->char*:"<<c2;
return c2;
}
QString转int
QString str("100");
int tmp = str.toInt();
int转QString
int tmp = 100;
QString str = QString::number(tmp);
Qstring转char*:
QString string = ui->textEdit->toPlainText();//获取文本框数据
const char* str = qPrintable(string);
char*转Qstring:
char *p="abc";
QString c=QString(p);
QString与c++中 string之间转换:
std::string QByteArray::toStdString() const
std::string QString::toStdString() const
QString QString::fromStdString(const std::string &str)
QByteArray QByteArray::fromStdString(const std::string &str)
QByteArray 转换成 char*:
char *b=a.data();
char* 转换成QByteArray :
char RECV[10]={'a','b','c','d','e','f','g','h','k','l'};
QByteArray DataContent = QByteArray(RECV,10)
std::string 转换成QByteArray:
string strData = "testString";
//先将string转为char* 再利用上面方法
QByteArray tmpByteArray(strData.c_str(), strData.length());
string 转 char*:
string str = "hello";
const char *p = str.c_str();
string str = "hello";
const char *p = str.data(); //加const
char* 转 string:
string str;
char *p = "hello";
str = p;
//注意:当p中含有较多'\0'时,转换的string是截断后的,正确转换如下:
string str(p,size); //size是p的大小