QString用法

本文介绍了QString类中arg函数的使用方法,包括如何通过arg函数替代字符串中的参数,并提供了实例演示。此外,还详细解释了QString与string、char*之间的转换过程,包括使用中间类型QByteArray进行转换的方法。最后,文章探讨了QString类的isEmpty函数,用于判断字符串是否为空。内容涵盖了QString类的基础应用,对于熟悉C++和Qt框架的开发者具有实用价值。

1、QString::arg()

用字符串变量参数依次替代字符串中最小数值

原型之一:
QString arg(int a, int fieldWidth = 0, int base = 10, QChar fillChar = QLatin1Char( ' ' )) const
fieldWidth为字符宽度,base为a转化为的进制
实例:


#include<QDebug>
int main()
{
//%1%2依次替换为arg中的参数
    QString s = QString("s %1 %2").arg("is").arg("string");
    qDebug()<<s;

//默认替换为111的十进制,16表示十六进制
    s = QString("a=%1,a=%2").arg(111).arg(111,0,16);
    qDebug()<<s;

//%数值相同时对应同一个arg参数,所以参数333是多余的
    s = QString("a=%1,a=%1").arg(222).arg(333);
    qDebug()<<s;

//L截断字符串,转换为16进制时忽略L
    s = QString("b=%1,b=%L2,b=%L3").arg(12345).arg(12345).arg(12345,0,16);
    qDebug()<<s;
    return 0;
}

这里写图片描述

2、QString与string,char* 之间的转换


借助中间类型QByteArray


#include<iostream>
#include<string>
#include<QString>
#include<QDebug>
#include<QByteArray>
using namespace std;

int main()
{
    QString qstr = QString("hello!");
    qDebug()<<"QString:"<<qstr;

    char* s1 = new char[10];
    QByteArray ba = qstr.toLocal8Bit();
    s1 = ba.data();
    cout<<"s1:"<<s1<<endl;

    string  str;
    str = ba.data();
    cout<<"str:"<<str<<endl;

    str = qstr.toStdString();
    cout<<"str:"<<str<<endl;

    return 0;
}


这里写图片描述

string s = qstr.toStdString();
QString qstr2 = QString::fromStdString(s);

3、bool QString::isEmpty() const

判断是否为空,是返回true

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值