QT——数据转换(int/QString/QByteArray/char/string)等

目录

1. QString怎么转成int

2. int转QString

3. int转string

4. string转int

5. QString转string

6. string转QString

7. QByteArray转QString

8. QString转QByteArray

9. QByteArray 转化为 char *

10. char * 转化为 QByteArray

11.QString 转 char *

12. char*转QString


1. QString怎么转成int

QString str = "123";
int num = str.toInt(); // 将 QString 转换为 int

带返回值:

QString str = "123";
bool ok;
int num = str.toInt(&ok); // 将 QString 转换为 int,并通过 ok 来检测转换是否成功if (ok) {// 转换成功
} else {// 转换失败
}

2. int转QString

//int转QString//方法1
int a = 123456;
QString b;
b = QString::number(a,10,5);//QString::number(a,基底,精度)//方法2,利用arg()
int a = 123456;
QString b = QString("%1").arg(a);

3. int转string

//int转string
int a = 123456;
string b;
b = std::tostring(a);

4. string转int

//string转int
string c = "123456";
int d;
d = atoi(c.c_str());//string转float 用 atof()

5. QString转string

//从QString 到 std::string
str = qstr.toStdString();

6. string转QString

//从std::string 到QString
qstr = QString::fromStdString(str);

7. QByteArray转QString

    // QByteArray转QString方法1QByteArray bytes("hello world");QString string = bytes;   // QByteArray转QString方法2QByteArray bytes("hello world");QString string;string.prepend(bytes);

8. QString转QByteArray

// QString转QByteArray方法1 
QString str("hello");  
QByteArray bytes = str.toUtf8(); // QString转QByteArray方法2
QString str("hello");  
QByteArray bytes = str.toLatin1();  

9. QByteArray 转化为 char *

//QByteArray 转化为 char * 
//data()返回一个指针,指向存储在字节数组中的数据。指针可用于访问和修改组成数组的字节。
//数据以“\0”结束,即对于“\0”结束符,返回字符串中的字节数为size() + 1。
QByteArray ba("Hello world");
char *ch = ba.data();  //ch是指针

10. char * 转化为 QByteArray

char *ch = "Hello world";
QByteArray ba = QByteArray(ch);  //直接使用QByteArray()构造

11.QString 转 char *

QString  str("Hello world");;
char*  ch;
QByteArray ba = str.toLatin1(); // QString::toLatin1() 时会在字符串后面加上'\0'
ch=ba.data();

12. char*转QString

//方法一:char* str;QString string(str);//方法二:不重新定义对象
inline QString charToQstring(char* charPara)
{return QString(QLatin1String(charPara));
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/199207.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

面向注解编程—Spring 注解看这一篇就够了(2)

面向注解编程—Spring注解大全(AOP篇) AOP英文全称:Aspect Oriented Programming(面向切面编程、面向方面编程),其实说白 了,面向切面编程就是面向特定方法编程。 AOP的作用:在程序…

排序的概念及其运用

1.排序的概念 排序:所谓排序,就是使一串记录,按照其中的某个或某些关键字的大小,递增或递减的排列起来的操作。 稳定性:假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序…

⭐ Unity里 用Shader 去做实时动态绿幕抠图

1.先看一下效果 a.这是背景图片 b.抠完图之后(这里用的是扣去白色的) 2.shader代码如下 Shader "UniversalChromaKey" {Properties{_MainTex("Base (RGB)", 2D) "white" {}_Sens("Sensibilidad", Range(0,.9)) .3_Cutoff("R…

java:slf4j、log4j、log4j2、logback日志框架的区别与示例

文章目录 背景SLF4J - 简单日志门面:Log4j - 强大而古老的日志框架:Log4j2 - Log4j的升级版:Logback - Log4j的继任者:比较Springboot集成slf4j、log4j2参考 背景 在Java开发中,日志记录是一个不可或缺的组成部分。为了满足不同的需求,Java社区涌现出多…

【JS学习】location对象

1. 介绍 location对象是BOM(Brower Object Model)浏览器对象模型对象中的一个。它是Web API的一部分,可以通过浏览器的"window"对象进行访问,即window.location 2. location对象的属性 属性名描述href完整的 URL&…

selenium python 实现基本自动化测试的示例代码

安装selenium 打开命令控制符输入:pip install -U selenium 火狐浏览器安装firebug:www.firebug.com,调试所有网站语言,调试功能 Selenium IDE 是嵌入到Firefox 浏览器中的一个插件,实现简单的浏览器操 作的录制与回…

nodejs+vue+elementui校园演出赞助艺术资源管理系统

系统主要分为系统管理员和学生、校外人员三个部分,系统管理员主要功能包括:首页、个人中心、学生管理、校外人员管理、社团信息管理、校内演出管理、校外商演管理、系统管理;基本上实现了整个基于vue的校园艺术资源管理系统的设计与实现信息管…

2023 CHI paper

CHI 23: Proceedings of the 2023 CHI Conference on Human Factors in Computing Systems Proceedings of the 2023 CHI Conference on Human Factors in Computing Systems | ACM Conferences

$sformat在仿真中打印文本名的使用

在仿真中,定义队列,使用任务进行函数传递,并传递文件名,传递队列,进行打印 $sformat(filename, “./data_log/%0d_%0d_%0d_0.txt”, f_num, lane_num,dt); 使用此函数可以自定义字符串,在仿真的时候进行文件…

EA电源维修EA-PS 9750-60直流电源维修Elektro-Autοmαtik

德国EA Elektro-Autοmαtik全系列电源维修EA-PS 80003U系列 这些μ-处理器控制和可编程重型的实验室电源提供了一个灵活的“自动量程”无论是高电压或高电流在额定功率输出,允许使用。配件包括数字编码器可用于设置电压,电流和功率,完整的4…

nodejs+vue+ElementUi小区社区公寓宿舍智能访客预约系统

该系统将采用B/S结构模式,前端部分主要使用html、css、JavaScript等技术,使用Vue和ElementUI框架搭建前端页面,后端部分将使用Nodejs来搭建服务器,并使用MySQL建立后台数据系统,通过axios完成前后端的交互,…

绘制纹理C++

用数学和C绘制一些纹理 sin(x * x y * y) int main() {int width 400; // 宽度int height 400; // 高度Mat texture Mat::zeros(height, width, CV_8UC1);for (int y 0; y < height; y) {for (int x 0; x < width; x) {int value static_cast<int>(255 * …

基于go文件同步工具的升级迭代

介绍 同样&#xff0c;该工具适用于多个项目不同版本的维护&#xff0c;文件更新和新增的同步(自动创建目录)&#xff0c;支持自动提交svn。 升级迭代 之前的文件同步工具&#xff0c;依赖chrome和http包&#xff0c;有时候js加载页面不太稳定&#xff0c;所以有空闲就升级迭…

什么是TDR(威胁检测与响应)

网络安全是被动和主动方法的混合体。过去&#xff0c;企业往往局限于被动的方法&#xff0c;随着合规性和安全策略越来越受到重视&#xff0c;主动方法也越来越受到关注。与其他行业相比&#xff0c;网络安全是高度动态的&#xff0c;网络安全团队采用任何可以帮助他们优化的新…

CSS grid 网格布局

一个网格通常具有许多的列&#xff08;column&#xff09;与行&#xff08;row&#xff09;&#xff0c;以及行与行、列与列之间的间隙&#xff0c;这个间隙一般被称为沟槽&#xff08;gutter&#xff09;。 创建一个网格容器 display: grid;设置列 grid-template-columns: …

什么是上采样和下采样?

上采样和下采样是信号处理和图像处理中常用的技术&#xff0c;用于改变信号或图像的分辨率。 上采样&#xff08;Upsampling&#xff09;&#xff1a; 上采样是指增加信号或图像的采样率或分辨率&#xff0c;从而使其变得更大。它通过插值或填充新的数据点来增加采样点的数量。…

好工具知多少:国内外最常用的SCADA软件

随着现代SCADA系统的发展&#xff0c;工业自动化取得了巨大的飞跃。如今&#xff0c;监控和数据采集&#xff08;SCADA&#xff09;系统已成为工业过程的重要组成部分。这些系统使操作员能够实时监控和控制复杂的系统。 SCADA系统正在广泛的行业中发挥着至关重要的作用&#x…

MinIo 的操作与使用

文章目录 一、Client 连通 官方 API 文档&#xff1a;Documentation 官方中文文档&#xff1a;MinIO中文文档 一、Client 连通 Java 代码&#xff1a; MinioClient minioClient MinioClient.builder().endpoint("http://192.168.110.110:9000").credentials("x…

2023-12-05 AIGC-阿里通义千问QWEN-说明

摘要&#xff1a; 2023-12-05 AIGC-阿里通义千问QWEN-说明 代码仓库: GitHub - QwenLM/Qwen: The official repo of Qwen (通义千问) chat & pretrained large language model proposed by Alibaba Cloud. 说明: https://github.com/QwenLM/Qwen/blob/main/README_CN.md

Redis服务器安装配置

Redis是一种开源的NoSQL内存数据库&#xff0c;用于高性能的数据存储和访问。Redis支持多种数据类型&#xff0c;包括字符串、哈希、列表、集合和有序集合&#xff0c;并且支持分布式存储和操作。Redis的特点包括快速、高可用和易扩展等&#xff0c;适用于各种应用场景。 一、…