QT之QString的用法介绍
QT之QString的用法介绍
- 成员函数
- 常见用法
成员函数
1)QString &append(const QString &str)
将 str 字符串追加到当前字符串末尾,并返回修改后的 QString 对象的引用。
2)QString &prepend(const QString &str)
将 str 字符串插入到当前字符串开头,并返回修改后的 QString 对象的引用。
3)QString &insert(int position, const QString &str)
在当前字符串的指定位置插入 str 字符串,并返回修改后的 QString 对象的引用。
4)QString &remove(int position, int n)
从当前字符串中删除指定位置的 n 个字符,并返回修改后的 QString 对象的引用。
5)QString &replace(int position, int n, const QString &str)
用 str 字符串替换当前字符串中指定位置的 n 个字符,并返回修改后的 QString 对象的引用。
6)QString left(int n)
返回当前字符串的前 n 个字符构成的子串。
7)QString right(int n)
返回当前字符串的后 n 个字符构成的子串。
8)QString mid(int position, int n)
返回当前字符串中从指定位置开始的 n 个字符构成的子串。
9)bool startsWith(const QString &str)
检查当前字符串是否以 str 字符串开头,如果是则返回 true,否则返回 false。
10)bool endsWith(const QString &str)
检查当前字符串是否以 str 字符串结尾,如果是则返回 true,否则返回 false。
11)int size()
返回当前字符串的长度(字符数)。
12)const QChar *unicode()
返回指向当前字符串的 Unicode 字符数组的指针。
13)QByteArray toUtf8()
将当前字符串转换为 UTF-8 编码的字节数组并返回。
14)QString &operator=(const QString &other)
将 other 字符串赋值给当前字符串,并返回修改后的 QString 对象的引用。
15)operator const char *() const
将当前字符串转换为 C 风格字符串并返回指向该字符串的指针。
16)operator QByteArray() const
将当前字符串转换为 QByteArray 对象并返回。
17)QString toLower() const
将字符串转换为小写并返回。
18)QString toUpper() const
将字符串转换为大写并返回。
19)QString trimmed() const
去除字符串两端的空格并返回。
20)QString simplified() const
去除字符串中的连续空格并返回。
21)QString leftJustified(int width, const QString &fillChar = QString()) const
将字符串左对齐,并在右侧用指定字符填充至指定宽度。
22)QString rightJustified(int width, const QString &fillChar = QString()) const
将字符串右对齐,并在左侧用指定字符填充至指定宽度。
23)QString centered(int width, const QString &fillChar = QString()) const
将字符串居中,并在两侧用指定字符填充至指定宽度。
24)QStringList split(const QString &separator, SplitBehavior behavior = KeepEmptyParts, Qt::CaseSensitivity cs = Qt::CaseSensitive) const
根据指定的分隔符将字符串拆分为子字符串列表。
25)QString joined(const QString &separator) const
将字符串列表使用指定的分隔符拼接为一个字符串。
26)QString arg(const QString &a, int fieldWidth = 0, int base = 10, int precision = -1, int flags = 0) const
将字符串格式化为指定宽度、进制、精度和标志的数值,并返回结果字符串。
27)QString arg(qlonglong a, int base = 10, int precision = -1, int flags = 0) const
将长整型数值格式化为指定进制、精度和标志的字符串,并返回结果字符串。
28)QString arg(qulonglong a, int base = 10, int precision = -1, int flags = 0) const
将无符号长整型数值格式化为指定进制、精度和标志的字符串,并返回结果字符串。
29)QString arg(double a, int fieldWidth = 0, char formatChar = ‘g’, int precision = -1, int flags = 0) const
将浮点数格式化为指定宽度、格式字符、精度和标志的字符串,并返回结果字符串。
常见用法
1)创建字符串:
可以用 QString 构造函数来创建一个字符串。例如:
QString str1("Hello");
QString str2(10, 'a'); // 创建一个包含10个'a'的字符串
2)字符串连接:
使用 “+”, “+=”, QString::append() 和 insert() 函数可以实现字符串的连接。例如:
QString str1 = "Hello";
QString str2 = "World";
QString str3 = str1 + " " + str2; // "Hello World"QString str4;
str4 += "Hello";
str4 += " ";
str4 += "World"; // "Hello World"str4.append("Hello");
str4.append(" ");
str4.append("World"); // "Hello World"
3)字符串替换:
使用 replace() 函数可以替换字符串中的内容。例如:
QString str = "Hello World";
str.replace(5, 6, "Qt"); // 在第5个字符后插入"Qt",结果为 "Hello QtWorld"
4)字符串截取:
使用 left()、right() 和 mid() 函数可以截取字符串的子串。例如:
QString str = "Hello World";
QString sub1 = str.left(5); // "Hello"
QString sub2 = str.right(5); // "World"
QString sub3 = str.mid(6, 5); // "World"
5)字符串转换:
可以使用 QString 的静态方法 QString::number() 将整数、浮点数转换为字符串。例如:
int num = 123;
QString str1 = QString::number(num); // "123"
可以使用 QString 的 toInt()、toDouble() 和 toFloat() 方法将字符串转换为整型、浮点型和单精度浮点型。例如:
QString str = "123";
int num = str.toInt(); // num == 123
相关文章:
QT之QString的用法介绍
QT之QString的用法介绍 成员函数常见用法 成员函数 1)QString &append(const QString &str) 将 str 字符串追加到当前字符串末尾,并返回修改后的 QString 对象的引用。 2)QString &prepend(const QString &str) 将 str 字符…...
基于Java+SpringBoot+Vue3+Uniapp前后端分离考试学习一体机设计与实现2.0版本(视频讲解,已发布上线)
博主介绍:✌全网粉丝4W,全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战,博主也曾写过优秀论文,查重率极低,在这方面有丰富的经验…...
springboot 获取参数
1.获取简单参数 2.实体对象参数...
【笔记】离线Ubuntu20.04+mysql 5.7.36 + xtrabackup定时增量备份脚本
一、环境 ● Ubuntu版本查看 lsb_release -a● mysql 版本查看 mysql --version我的是ubuntu 20.04,mysql是5.7.36,所以要用 install_percona-xtrabackup-24 二、原理 备份 通过ubuntu自带的定时器运行增量备份脚本备份文件可以存储在映射后的其他…...
树哈希与换根dp:CF763D
采用的树哈希函数是: d p x w x ∑ y ∈ x d p y 2 w x 2 \Large dp_xw_x\times \sum_{y\in x}dp_y^2w_x^2 dpxwxy∈x∑dpy2wx2 发现从 x x x 到 y y y 时只有 x x x 与 y y y 的哈希值会变化,分别维护即可 #include<bits/stdc.h&…...
npm、yarn、pnpm如何清除缓存?
前端工程化创建项目会经常使用各种安装包管理工具,安装各种前端依赖包。例如,npm、yarn、pnpm等。时间一长,各种安装包管理工具的在安装依赖时,留下的缓存文件就会变得很大,以至于影响系统的运行,因此必要时…...
12款最火的AI画图软件,助你探索创新设计
ChatGPT火爆出圈,AI画图软件也如雨后春笋般流行起来。各类AI画图的软件工具横空出世,设计师与其焦虑工作会不会被人工智能取代,不如践行“工欲善其事必先利其器”,开拓思路,打开格局,好好地探索下如何利用好…...
cookie信息无法获取问题研究
背景 在oneapi这个前后端都有的开源项目中,我想接入chatnextweb到oneapi的后端。 由于需要二开chatnextweb,添加登录注册功能,考虑到java后端的性能问题和内存占用,决定不重启写个服务,而是将登录注册接入到oneapi的…...
Linux:冯诺依曼系统和操作系统的概念
文章目录 冯诺依曼体系结构冯诺依曼体系的理解 操作系统操作系统的基本定位操作系统的理解1 操作系统的理解2总结 本篇主要总结的是操作系统的基本认知和一些概念 冯诺依曼体系结构 那么上图表示的就是冯诺依曼体系结构,那这个体系结构是什么?为什么要先…...
【操作系统笔记十一】进程间通信
Linux文件系统 inode 节点 (index node):给每个文件赋予一个称为 i 节点的数据结构。 inode 一开始是存储在硬盘中的,只有当文件被打开的时候,其对应的 i 节点才加载到内存中。 总结: Linux 中,…...
【操作系统】聊聊Linux软中断
什么是中断 中断是系统用来响应硬件设备请求的一种机制,会打断进程的正常调度和执行,转而去执行内核中的中断处理程序。 比如你正在看书,你女朋友叫你出去逛街。你就需要先放下手里的事情,然后逛街。回来之后,在接着看…...
公众号迁移个人可以迁移吗?
公众号账号迁移的作用是什么?只能变更主体吗?很多小伙伴想做公众号迁移,但是不知道公众号迁移有什么作用,今天跟大家具体讲解一下。首先公众号迁移最主要的就是修改公众号的主体了,比如我们公众号原来是A公司的&#x…...
全国职业技能大赛云计算--高职组赛题卷⑤(容器云)
全国职业技能大赛云计算--高职组赛题卷⑤(容器云) 第二场次题目:容器云平台部署与运维任务2 基于容器的web应用系统部署任务(15分)任务3 基于容器的持续集成部署任务(15分)任务4 Kubernetes容器…...
支撑位和阻力位在Renko和烛台图如何使用?FPmarkets澳福3秒回答
很多投资者都知道,Renko图表和普通日本烛台都会采用相同的交易信号,即支撑位和阻力位。那么支撑位和阻力位在Renko和烛台图如何使用?FPmarkets澳福3秒回答。 这些信号在任何时间框架上都会出现,且在蜡烛图交易中颇受欢迎。对于Renko图表而言…...
如何在32位MCU用printf()函数打印64位数据
1. 在32位MCU上定义64位变量: unsigned long long time_base; unsigned long long temp_time;2. 调用打印函数: printf("RFID:time_base:%d\r\n",time_base); printf("RFID:temp_time:%d\r\n",temp_time); printf("RFID:Ru…...
Python爬虫程序设置代理常见错误代码及解决方法
Python爬虫程序设置代理是爬虫程序中常用的技巧,可以有效地绕过IP限制,提高爬虫程序的稳定性和效率。然而,在设置代理时,常会出现各种错误代码,这些错误代码可能会影响程序的正常运行,甚至导致程序崩溃。本…...
3D点云目标检测:Centerformer训练waymo数据集
一、环境准备 项目地址:centerformer 1.0、基础环境 python 3.8.0 torch 1.9.1cu111 waymo-open-dataset-tf-2-6-0 1.4.9 spconv 1.2.1 其余按照requirement.txt里安装就行 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt由于我本人是在…...
火山引擎DataLeap推出两款大模型应用: 对话式检索与开发 打破代码语言屏障
更多技术交流、求职机会,欢迎关注字节跳动数据平台微信公众号,回复【1】进入官方交流群 自上世50年代,以“计算机”作为代表性象征的信息革命开始,社会对于先进生产力的认知便开始逐步更迭——从信息化(通常认为是把企…...
windows上配置vscode C/C++代码跳转
windows上配置vscode C/C代码跳转 安装插件 C/C 官方的 C/C 插件,必备的插件,是代码跳转、自动补全、代码大纲显示等功能的基础。 Gtags C/C GNU Global GNU Global除了安装该插件之外,还需要在本地下载安装GNU Global工具。多看下插件…...
【Xilinx】基于MPSoC的OpenAMP实现(一)
【Xilinx】基于MPSoC的OpenAMP实现(一) 一、开发环境1、开发思路2、下载官方bsp包 二、编译Linux1、配置petalinux环境变量2、创建工程3、进入目录4、设置缓存目录(重点:可离线编译,加快编译速度)5、配置u-…...
从物理到经济:定积分在5个真实场景中的应用详解(含建模步骤)
从物理到经济:定积分在5个真实场景中的应用详解(含建模步骤) 数学公式常被诟病为"纸上谈兵",但当你看到工程师用积分计算桥梁承重、经济学家用积分预测市场趋势时,就会明白这些符号背后的力量。定积分不仅是…...
测评 ASR 歌词生成模型
1. 测评背景与目标 业务需求: 目前有大批量的 MP3 音频需要匹配歌词。网络公开渠道能爬取到的歌词占比不足 50%,因此必须采用 ASR(自动语音识别)生成模式来补全缺口。 核心痛点: 现有的商业 API 调用成本较高…...
OpenClaw语音控制扩展:Gemma-3-12b-it实现自然语言任务触发
OpenClaw语音控制扩展:Gemma-3-12b-it实现自然语言任务触发 1. 为什么需要语音控制自动化助手 上周五下班路上,我遇到一个典型场景:开车时收到客户紧急邮件需要立即回复,但双手离不开方向盘。这种场景让我开始思考——能否用语音…...
RTKLIB数据流引擎str2str:从源码到实战的流式数据处理架构剖析
1. RTKLIB数据流引擎str2str架构解析 str2str是RTKLIB中负责数据流处理的核心模块,它的设计理念类似于工厂里的流水线传送带。想象一下GNSS数据就像流水线上的零件,str2str的工作就是把这些零件从不同来源的传送带(输入流)接过来&…...
League-Toolkit:英雄联盟客户端全功能智能助手,颠覆传统游戏体验的本地化解决方案
League-Toolkit:英雄联盟客户端全功能智能助手,颠覆传统游戏体验的本地化解决方案 【免费下载链接】League-Toolkit An all-in-one toolkit for LeagueClient. Gathering power 🚀. 项目地址: https://gitcode.com/gh_mirrors/le/League-To…...
解锁B站直播自由:第三方推流工具深度技术解析
解锁B站直播自由:第三方推流工具深度技术解析 【免费下载链接】bilibili_live_stream_code 用于在准备直播时获取第三方推流码,以便可以绕开哔哩哔哩直播姬,直接在如OBS等软件中进行直播,软件同时提供定义直播分区和标题功能 项…...
Dify如何助力企业提升销售业绩
Dify作为一款企业级AI应用开发平台,可以通过赋能销售团队、优化销售流程,直接提升企业的销售业绩。其核心在于利用大模型能力,让销售变得更智能、更精准、更高效。🎯 精准获客与线索生成智能潜客筛选:通过Dify工作流&a…...
WEEX 宣布赞助职业赛车手 Carl Moon,开启 2026 赛季全球品牌合作
近日,WEEX 宣布正式与职业赛车手兼内容创作者 Carl Moon 达成合作,成为其 2026 赛季年度品牌赞助商。此次合作将覆盖包括 Ferrari Challenge 与 GT World Challenge Europe 在内的多个欧洲顶级赛事,预计贯穿 3 月至 11 月赛季周期,…...
解压缩软件分享-Banizip
解压缩软件分享-Banizip蓝奏云地址https://wwbdt.lanzoul.com/ijspk3mbduxi 密码:9y00百度网盘地址通过网盘分享的文件:BANDIZIP6-SETUP.EXE 链接: https://pan.baidu.com/s/1VBovOqT-M7kiv2b9YuJGIw?pwdrc87 提取码: rc87 为什么推荐这个呢,因为这个支…...
【C++初阶】手撕C++ string类
🎬 博主名称:键盘敲碎了雾霭 🔥 个人专栏: 《C语言》《数据结构》 《C》 ⛺️指尖敲代码,雾霭皆可破 文章目录 一、前言:为什么要手写string类?二、整体架构设计2.1 成员变量设计2.2 类结构总览 三、核心构…...
