Qt 的QString类的使用
Qt的QString类提供了很方便的对字符串操作的接口。
- 使某个字符填满字符串,也就是说字符串里的所有字符都有等长度的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 0x.indexOf(y, 1); // returns 10x.indexOf(y, 10); // returns 10x.indexOf(y, 11); // returns -1
3指定位置插入字符串
QString & QString::insert ( int position, const QString & str )
例如:
QString str = "Meal";str.insert(1, QString("ontr"));// str == "Montreal"
3,判断字符串是否为空。
bool QString::isEmpty () const
如:
QString().isEmpty(); // returns trueQString("").isEmpty(); // returns trueQString("x").isEmpty(); // returns falseQString("abc").isEmpty(); // returns false
4.判断字符串是否存在。
bool QString::isNull () const
例如:
QString().isNull(); // returns trueQString("").isNull(); // returns falseQString("abc").isNull(); // returns false
5,从左向右截取字符串
QString QString::left ( int n ) const
例如:
QString x = "Pineapple";QString y = x.left(4); // y == "Pine"
6,从中间截取字符串。
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"
7,删除字符串中间某个字符。
QString & QString::remove ( int position, int n )
例如:
QString s = "Montreal";s.remove(1, 4);// s == "Meal"
8,替换字符串中的某些字符。
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!"
9,以某个字符切割字符串。(最近经常用到的)
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 emptyQString::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"
#include <QCoreApplication>
#include <QDebug>
class QString;
int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv);
/*
QString str = "Berlin";
str.fill('z');
// str == "zzzzzz"
QByteArray ba = str.toLatin1();
char *mm = ba.data();
qDebug()<<mm<<endl;
str.fill('A', 2);
// str == "AA"
ba = str.toLatin1();
mm = ba.data();
qDebug()<<mm<<endl;
qDebug()<<"endl";
*/
/*
QString x = "sticky question";
QString y = "sti";
qDebug()<<x.indexOf(y)<<endl; // returns 0
qDebug()<<x.indexOf(y, 1)<<endl; // returns 10
qDebug()<<x.indexOf(y, 10)<<endl; // returns 10
qDebug()<<x.indexOf(y, 11)<<endl; // returns -1
*/
/*
QString str = "Meal";
str.insert(1, QString("ontr"));
// str == "Montreal"
qDebug()<<str<<endl;
*/
/*
qDebug()<<QString().isEmpty(); // returns true
qDebug()<<QString("").isEmpty(); // returns true
qDebug()<<QString("x").isEmpty(); // returns false
qDebug()<<QString("abc").isEmpty(); // returns false
*/
/*
qDebug()<<QString().isNull(); // returns true
qDebug()<<QString("").isNull(); // returns false
qDebug()<<QString("abc").isNull(); // returns false
*/
/*
QString x = "Pineapple";
QString y = x.left(4); // y == "Pine"
qDebug()<<x;
qDebug()<<y;
*/
/*
QString x = "Nine pineapples";
QString y = x.mid(5, 4); // y == "pine"
QString z = x.mid(5); // z == "pineapples"
qDebug()<<x;
qDebug()<<y;
qDebug()<<z;
*/
/*
QString s = "Montreal";
s.remove(1, 4);
// s == "Meal"
qDebug()<<s;
*/
/*
QString x = "Say yes!";
QString y = "no";
x.replace(4, 3, y);
// x == "Say no!"
qDebug()<<x;
qDebug()<<y;
*/
QString str0;
QString str1;
QString str2;
QString csv = "forename,middlename,surname,phone";
QString path = "/usr/local/bin/myapp"; // First field is empty
QString::SectionFlag flag = QString::SectionSkipEmpty;
str0 = csv.section(',', 2, 2); // str == "surname"
str1 = path.section('/', 3, 4); // str == "bin/myapp"
str2 = path.section('/', 3, 3, flag); // str == "myapp"
qDebug()<<str0;
qDebug()<<str1;
qDebug()<<str2;
return a.exec();
}
10,把整型,浮点型,或其他类型转化为QString
QString & QString::setNum ( uint n, int base = 10 )
相类似的还有好多重载函数,想深入了解,还是要看Qt帮助文档的。
Qt 的QString类的使用相关推荐
- QT的QString类的使用
详细说明 QString类提供Unicode字符串. QString存储一串16位QChars,其中每个QChar对应一个UTF-16代码单元. (代码值大于65535的Unicode字符使用代理对, ...
- Qt 之QString
Qt的QString类提供了很方便的对字符串操作的接口. 使某个字符填满字符串,也就是说字符串里的所有字符都有等长度的ch来代替. QString::fill ( QChar ch, int size ...
- QT学习笔记(十一):QString类
QT学习笔记(十一):QString类 1.概述 2.编辑操作 3.查询操作 3.转换操作 1.概述 1.1 QString 类是 Qt 中用于表示字符串的类,实现在 QtCore 共享库中.QStr ...
- QT中QString的所有类用法大全
前言 之前用到QT中QString的用法,但总是忘记,这次自己整理出来,自己想用可以随时查看,同时也可以帮助到大家. 文章目录 前言 一.QString与其他变量的转换 1.QString::numb ...
- Qt中 QString 和int,double等的转换
Qt中 int ,float ,double转换为QString 有两种方法 1.使用 QString::number(); 如: long a = 63; QString s = QString:: ...
- QT的QByteArray 类的使用
详细说明 QByteArray类提供字节数组. QByteArray可用于存储原始字节(包括'\ 0')和传统的8位'\ 0'终止的字符串.使用QByteArray比使用const char *更方便 ...
- QT(1)- QString
QT(1)- QString 1 简介 在Qt中表示字符串的类是QString类,它存储字符串是采用的Unicode码,编码方式是使用UTF-16来进行编码的,也就是一个字符(两个字节),一个中文汉字 ...
- qt之QSqlQuery类执行SQL语句
转载自:https://wizardforcel.gitbooks.io/qt-beginning/content/28.html 导语 SQL即结构化查询语言,是关系数据库的标准语言.前面两节中已经 ...
- Qt之QImage类
文章目录 QT--QImage类 QImage获取图像的数据信息 QImage图像格式转换 由RGB格式转换为BGR格式 将彩色图转换为灰度图 图像保存 QImage图像显示在QLabel上 QPix ...
最新文章
- android自定义差值器,如何创建自定义插值器以在android中应用翻译动画
- 在studio中使用libsdl2.so,编译SDL Demo
- 解决vc2008 utf8中文字符串报错 C2001常量中有换行符
- C# webrequest 抓取数据时,多个域Cookie的问题
- Python网页分析,分析网站的日志数据
- CSS(九)元素隐藏和利弊
- 5201314用计算机怎么打出来,计算器算出5201314抖音
- python混合线性模型_如何在Python statsmodels中有多组线性混合效应模型?
- dorado 7 数据库配置
- 告别晦涩难懂的物理,《张朝阳的物理课》了解一下
- astc纹理压缩格式
- 遇见未来 | 对话叶毓睿:人类文明运行在软件之上(上篇)
- cmd命令与dos指令
- 随机打乱数据的几种方式
- python--文件的导入与导出
- oa系统服务器什么意思,OA系统是什么意思
- OnePlus一加手机:测试
- JavaScript 实现音乐播放器
- linux图像显示(五)使用freetype处理矢量字体
- 线程之插队(join方法)
热门文章
- Gogland IDE Run/Debug Configurations 配置说明
- @FunctionalInterface
- 22.类对象和类指针
- Android --- 当 item 的数量增加时,ListView 并不能根据所有 item 一共的数量来撑开布局
- amazon mws api 获取所有产品_致跨境电商新卖家 - 如何确定一个产品的市场容量?...
- python socket发送组播数据_Python socket 如何实现广播单播切换
- ML:MLOps系列讲解之《CRISP-ML (Q)ML生命周期过程—了解机器学习开发的标准过程模型—业务和数据理解→数据工程(数据准备)→ML模型工程→评估ML模型→模型部署→模型监控和维护》解读
- Python之selenium:selenium库的简介、安装、使用方法之详细攻略
- Python之gmplot:gmplot库的简介、安装、使用方法之详细攻略
- CV之detectron2:detectron2的简介、安装、使用方法之详细攻略