1.
QString 尾部拼接,尾部插入字符.调用append()函数.同时,QString字符串直接用加号+ 也可以进行拼接.
QString s = "我的女神";
s = s + "刘亦菲";
s += "最近可好?";
s.append("你跑哪儿去了?");
//拼接结果: 我的女神刘亦菲最近可好?你跑哪儿去了?
2.
QString 在字符中插入字符,函数insert().insert()第一个参数是插入的起始位置,下标从0数起;第二个参数是要插入的字符.因为第二个参数是QByteArray字节数组.所以我们要使用toUtf8()把QString转换为QByteArrrray数据类型.当然也可以把插入位置定位到头部或者尾部,插入字符串.
QString sMem = "三";
QString sFish = "鱼的记忆是秒钟的故事";
//insert()第二个形参是字节数组QByteArray;所以要把QString转为QByteArray.toUtf8()返回一个字节数组QByteArray
sFish.insert(5,sMem.toUtf8());
//插入结果:鱼的记忆是三秒钟的故事
3.
prepend()在字符串头部位置插入.
QString ss = "好多";
qDebug()<
4.
QString格式化.
方式1:使用函数sprintf().%s代表字符串,%d代表整数,%.1f代表浮点数小数点后有一位小数.
QString s1;
s1.sprintf("%s%d%s%.1f%s","史前",400,"万年前有",0.5,"个人类");//%.1f表示一位小数.
//输出结果:史前400万年前有0.5个人类
方式2:arg()函数.QString("%1%2%3%4%5").arg()...的写法不需要指明这些数据类型的替代符,只需要明确有几种数据段即可.像下面的就分成了5段.
QString sPeople1;
sPeople1 = QString("%1%2%3%4%5")
.arg("史前")
.arg(400)
.arg("万年前有")
.arg(0.5)
.arg("个人类");
//输出结果:史前400万年前有0.5个人类
5.
at() 返回索引处的字符.该QString字符串有字符'c' 'r' 'a' 'b' '\0'.下标从0数起,at(2)就是定位到了字符a,因为at()函数返回的是QChar字符.所以用该字符变量c接收.
QString sAnimal = "crab";
QChar c = sAnimal.at(2);//返回QChar类型
6.
replace() 替代字符.第一个参数:替代字符开始的位置;第二个参数:替代的长度;第三个参数:替代的字符.
//原字符串:好多鱼的记忆是三秒钟的故事
sFish.replace(9,3,"三个月");//起始位置,长度,替换字符
//替代后:好多鱼的记忆是三个月的故事
7.
trimmed() 去除字符串两端的空格.
QString sFish = " 好多鱼的记忆是三个月的故事 "
qDebug()<
8.
simplified() 去除两端空格,中间空格以一个空格' '替代.这使得成为一个标准的英文句子.
sFish = " Fish had a bad memory. ";
qDebug()<
9.查询字符的函数:
startWith()是否以什么字符开头,endsWith()是否以什么字符结尾,contains(),是否包含该字符.返回值为 true或 false.
QString sTom = "汤姆和猫是好朋友.";
QString sCat = "Tom and Cat are good friends.";
//是否以字符串"汤姆"开头.
qDebug()<
10.
字符串比较compare() 返回值0表示相等==.compare()前2个参数是比较的对象.第3个参数设置是否为敏感匹配.
qDebug()<
11.
split分割字符串.参数就是以哪个字符作为分割字符串的标志.分割后的字符串保存在字符串链表QStringList里面.
QString strTime = "1949/10/1";
QStringList timeList = strTime.split("/");
foreach(QString ss,timeList){//循环打印出每一个字符串.
qDebug()<
12.
mid()截取字符串.从字符串第中第5个字符开始截取,截取3个字符长度.
QString sFriends = "汤姆和猫是好朋友.";
qDebug()<
13.
QString NULL字符串与空字符串的区别.(isNULL,isEmpty)
NULL字符串:调用默认构造函数QString(),或者(const char* c = 0)构造.
Empty字符串:只要是空的,字符长度为0没有数据.
qDebug()<
all~~