QString 转std::string 直接toStdString() QString 通过QByteArray转char* QString str; char* ch; QByteArray ba = str.toLatin1(); ch=ba.data(); const char* 转char * 直接const_cast去掉const修饰 const_cast<char*>(str.c_str()) char* 转string 直接赋值 char c[10] = "1234"; string s...
1.对qstring用tostdstring(),再对返回的数据用c_str()。 2.对qstring用tolocal8bit(),再对返回的数据用data()。 3.对qstring用tolocal8bit(),再对返回的数据用constData()。 4.对qstring用toutf8(),再对返回的数据用data()。 5.对qstring用toutf8(),再对返回的数据用constData()。 开发软件是vs...
3. QString 转 const char * QString str = "abc"; QByteArray array = str.toLatin1(); const char *ch1 = array.data(); qDebug() << ch1; // "abc" std::string s = str.toStdString(); const char *ch2 = s.c_str(); qDebug() << ch2; // "abc" 1 2 3 4 5 6 7 8 ...
string s = qstr.toStdString(); 2.String转换QString QString qstr2 = QString::fromStdString(s); 1. string str("hello world !"); 2. const char * s = str.c_str(); 3. QString qs1= "Hello , world !"; QByteArray ba = qs1.toLocal8Bit(); ...
1 QString DATA; 2 std::string str = DATA.toStdString(); 3 const char* ch = str.c_str();
const char* str = string.toLatin1.data(); 当然也可以 const char* s = string.toStdString().c_str(); 2.QByteArray to char* QByteArray arrary; char* ch = arrary.data(); 3.QString to QByteArray QString str; QByteArray array = str.toUtf8();...
然而, 首先不谈toStdString没有加括号,正确的是toStdString()。这个代码本身就存在一些问题: const char* 和 char* 并不直接存储字符串中的字符,它们本身而是指针,指向的是一块内存空间,内存空间内才有字符串中的字符。在QString执行toStdString()函数后,返回的是std::string,而无论是c_str()还是data(),都...
QString::fromStdString ( const std::string & str ); QString::fromStdWString ( const std::wstring & str ); QString::fromUcs4 ( const uint * unicode, int size = -1 ); QString::fromUtf8 ( const char * str, int size = -1 ); ...
std::string s2 = s2.toStdString(); const char* cc = s.c_str(); 上面的代码执行完后,cc打印出来是乱码 1 2 QByteArray ba = s1.toLatin1(); const char* cc = ba.data(); 换成这种方式来转换,cc打出来就正常了 上面就是QString转换为const char*后乱码的解决方案 分类: C++ , QT 好文...