一、QString转char
1、使用QString的toLocal8Bit方法
QString str("hello world");
QByteArray buffer = str.toLocal8Bit(); // 将QString转换为QByteArray
const char *charStr = buffer.constData(); // 将QByteArray转换为char *
2、使用QString的toUtf8方法
QString str("hello world");
QByteArray buffer = str.toUtf8(); // 将QString转换为QByteArray
const char *charStr = buffer.constData(); // 将QByteArray转换为char *
二、QString转ANSI
1、使用QString的toLocal8Bit方法
QString str("hello world");
QByteArray buffer = str.toLocal8Bit(); // 将QString转换为QByteArray
LPCSTR ansiStr = buffer.constData(); // 将QByteArray转换为LPCSTR(ANSI字符串)
2、使用qt实现函数QString::toLocal8Bit().constData()
三、QString转int
1、使用QString的toInt方法
QString str("123");
bool ok = false;
int num = str.toInt(&ok); // 将QString转换为int类型
if (ok) {
//转换成功
} else {
//转换失败
}
2、使用QString的toInt方法转换十六进制
QString str("A");
bool ok = false;
int num = str.toInt(&ok, 16); // 将QString转换为int类型,以十六进制方式转换
if (ok) {
//转换成功
} else {
//转换失败
}
四、QString转blob
1、使用QString的toLocal8Bit方法
QString str("hello world");
QByteArray buffer = str.toLocal8Bit(); // 将QString转换为QByteArray
QByteArray blob = QByteArray::fromRawData(buffer.data(), buffer.size()); // 将QByteArray转换为Blob类型
2、使用QString的toUtf8方法
QString str("hello world");
QByteArray buffer = str.toUtf8(); // 将QString转换为QByteArray
QByteArray blob = QByteArray::fromRawData(buffer.data(), buffer.size()); // 将QByteArray转换为Blob类型
五、QString转char
使用QString的toLatin1方法
QString str("hello world");
const char *charStr = str.toLatin1().constData(); // 将QString转换为char *
六、QString转为char
使用QString的toStdString方法
QString str("hello world");
std::string stdStr = str.toStdString(); // 将QString转换为std::string类型
const char *charStr = stdStr.c_str(); // 将std::string转换为char *
七、QString转string
使用QString的toStdString方法
QString str("hello world");
std::string stdStr = str.toStdString(); // 将QString转换为std::string类型
八、QString转int
使用QDate的fromString方法
QString str("2022-07-01");
QDate date = QDate::fromString(str, "yyyy-MM-dd"); // 将QString转换为QDate类型
九、QString和char转换
1、使用QString的fromLocal8Bit方法将char转换为QString
const char *charStr = "hello world";
QString str = QString::fromLocal8Bit(charStr); // 将char *转换为QString
2、使用QString的fromUtf8方法将char *转换为QString
const char *charStr = "hello world";
QString str = QString::fromUtf8(charStr); // 将char *转换为QString
原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/200075.html
微信扫一扫
支付宝扫一扫