[攻略][Qt]QString类的使用

2 篇文章 0 订阅

Qt的QString类提供了很方便的对字符串操作的接口。

1、使某个字符填满字符串,也就是说字符串里的所有字符都有等长度的ch来代替。
QString::fill ( QChar ch, int size = -1 )

例:

QString str = "Berlin";
str.fill('z');
// str == "zzzzzz"
str.fill('A', 2);
// str == "AA"
2、从字符串里查找相同的某个字符串str。
int QString::indexOf ( const QString & str, int from = 0, Qt::CaseSensitivity cs = Qt::CaseSensitive ) const

例如:

QString x = "sticky question";
QString y = "sti";
x.indexOf(y);               // returns 0
x.indexOf(y, 1);            // returns 10
x.indexOf(y, 10);           // returns 10
x.indexOf(y, 11);           // returns -1
3、指定位置插入字符串
QString & QString::insert ( int position, const QString & str )

例如:

QString str = "Meal";
str.insert(1, QString("ontr"));
// str == "Montreal"
4、判断字符串是否为空。
bool QString::isEmpty () const

例如:

QString().isEmpty();            // returns true
QString("").isEmpty();          // returns true
QString("x").isEmpty();         // returns false
QString("abc").isEmpty();       // returns false
5、判断字符串是否存在。
bool QString::isNull () const

例如:

QString().isNull();             // returns true
QString("").isNull();           // returns false
QString("abc").isNull();        // returns false
6、从左向右截取字符串
QString QString::left ( int n ) const

例如:

QString x = "Pineapple";
QString y = x.left(4);      // y == "Pine"
7、从中间截取字符串。
QString QString::mid ( int position, int n = -1 ) const

例如:

QString x = "Nine pineapples";
QString y = x.mid(5, 4);            // y == "pine"
QString z = x.mid(5);               // z == "pineapples"
8、删除字符串中间某个字符。
QString & QString::remove ( int position, int n )

例如:

QString s = "Montreal";
s.remove(1, 4);
 // s == "Meal"
9、替换字符串中的某些字符。
QString & QString::replace ( int position, int n, const QString & after )

例如:

QString x = "Say yes!";
QString y = "no";
x.replace(4, 3, y);
 // x == "Say no!"
10、以某个字符切割字符串。
QString QString::section ( QChar sep, int start, int end = -1, SectionFlags flags = SectionDefault ) const

例如:

QString str;
QString csv = "forename,middlename,surname,phone";
QString path = "/usr/local/bin/myapp"; // First field is empty
QString::SectionFlag flag = QString::SectionSkipEmpty;
str = csv.section(',', 2, 2);   // str == "surname"
str = path.section('/', 3, 4);  // str == "bin/myapp"
str = path.section('/', 3, 3, flag); // str == "myapp"
11、把整型,浮点型,或其他类型转化为QString
QString & QString::setNum ( uint n, int base = 10 )

相类似的还有好多重载函数,想深入了解,还是要看Qt帮助文档的。

参考

Qt 的QString类的使用
https://www.cnblogs.com/onlycxue/archive/2012/10/30/2746902.html



写于关雎


在这里插入图片描述


新浪微博:https://weibo.com/tianzhejia
CSDN博客:https://blog.csdn.net/qq_35605018
博客网站:http://www.zhijiadeboke.xyz
GitHub:https://github.com/ZhijiaTian
QQ邮箱:2461824656@qq.com
126邮箱:tianzhejia@126.com
Outlook邮箱:tianzhejia@outlook.com

以上均可与本人取得联系,欢迎探讨。^ v ^

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值
>