各种数据类型的相互转换
char * 与 const char *的转换
char *ch1="hello11";
const char *ch2="hello22";
ch2 = ch1;//不报错,但有警告
ch1 = (char *)ch2;
char 转换为 QString
其实方法有很多中,我用的是:
char a='b';
QString str;
str=QString(a);
QString 转换为 char
方法也用很多中
QString str="abc";
char *ch;
ch = str.toLatin1.data();
QByteArray 转换为 char *
char *ch;//不要定义成ch[n];
QByteArray byte;
ch = byte.data();
char * 转换为 QByteArray
char *ch;
QByteArray byte;
byte = QByteArray(ch);
QString 转换为 QByteArray
QByteArray byte;
QString string;
byte = string.toAscii();
QByteArray 转换为 QString
QByteArray byte;
QString string;
string = QString(byte);
这里再对这俩中类型的输出总结一下:
qDebug()<<"print";
qDebug()<<tr("print");
qDebug()<<ch;(ch 为char类型)
qDebug()<<tr(ch);
qDebug()<<byteArray;(byteArray是QByteArray类型)
qDebug()<<tr(byteArray);
qDebug()<<str;(str 为Qstring类型)
但是qDebug()<<tr(str);是不可以的,要想用tr()函数输出QString类型的字符则要如下:
qDebug()<<tr(str.toLatin1);
int 转 QString
int a=10;
QString b;
b=QString::number(a)
QString 转int
QString a="120"
int b;
b=a.toInt()
来源:http://ibeyond.blog.51cto.com/1988404/373948
分享到:
相关推荐
在Qt框架中,字符串处理是常见的任务,尤其是涉及到串口通信时,可能需要在QString与原始C风格的char *或QByteArray之间进行转换。QString是一个非常重要的类,它提供了Unicode字符串的支持,允许处理多种语言和字符...
本文将详细介绍如何在QT中使用QString进行ASCII转换,并探讨相关的知识背景和技术细节。 首先,ASCII(美国标准信息交换代码)是一种字符编码标准,包含了128个字符,每个字符由一个7位的二进制数表示,可以转换为...
在Qt开发环境中,类型转换是一项非常重要的技能,它涉及到Qt自身提供的数据类型与标准C++类型之间的相互转换。本文将详细阐述Qt中的各种类型转换方式,帮助开发者更好地理解和掌握Qt中不同类型间的转换技巧。 #### ...
本文将详细介绍QT中各种类型之间的转换方法,包括但不限于`char*`与`QString`之间的转换、`QByteArray`与`QString`之间的转换等。 #### 一、`char*`与`QString`之间的转换 **1.1 `char*`转为`QString`** - **直接...
总结一下,QString与ASCII之间的转换是通过QString的`toUtf8()`方法将其转换为QByteArray,然后可以遍历该字节数组来处理ASCII字符。这个过程在处理包含ASCII字符的字符串时非常有用,尤其是在跨平台或与不同编码...
本文将详细介绍Qt中的数据类型转换方法,包括基本的数据类型如字符串(`QString`)与数字之间的转换、字符数组与字符串之间的转换等。 #### 二、字符串(`QString`)与数字之间的转换 1. **`QString`转`double`** ...
你可以使用`QByteArray::fromHex()`或`QString::toLatin1()`方法将16进制字符串转换为字节序列,再通过`QByteArray::toInt()`将其转换为整数。 3. **转换为字符串**:将得到的十进制数值转换为16进制字符串。可以...
- 如果接收到的数据是其他编码格式,需要先将其转换成QByteArray,再用合适的编码转换为QString。 ```cpp // 设置编码为GBK socket->setEncoding("GBK"); // 接收并转换 QByteArray data = socket->readAll(); ...
在QT开发中,文件操作是一项基础且重要的任务。本文将深入探讨如何在QT环境中实现“文件所有内容的读取”并将其转化为二进制格式...这个过程涉及到文件I/O操作、数据类型转换以及字符串处理,是QT开发中的常见技能。
在 Qt 框架中,将整型数组转换为字符串涉及到一些关键的步骤和类的使用。Qt 提供了丰富的工具来处理不同类型的数据转换,包括数值类型与字符串之间的转换。以下是一个详细的步骤介绍: 首先,要创建一个整型数组,...
在本文中,我们将深入探讨如何在Qt环境下对嵌入式热敏打印机进行串口控制,同时解决在ARM平台上遇到的一些常见问题,如QString与char*转换时的乱码问题、Qt数据库查询的回调机制以及通过串口发送十六进制数据的方法...
- 此方法主要用于转换`char *`到`QString`。 2. **设置翻译编码** - 使用`QTextCodec::setCodecForTr()`方法设置翻译使用的编码。 ```cpp QTextCodec::setCodecForTr(QTextCodec::codecForName("utf8")); ``` ...
Qt提供了`QTextCodec::availableCodecs()`方法来获取系统支持的所有编码列表,以及`QTextCodec::codecForMib(int mib)`或`QTextCodec::codecForName(const char *name)`根据MIB(多用途互联网邮件扩展)编号或编码...
### QT基本类型及使用说明 ...以上介绍了Qt中QString的各种操作方法以及不同类型之间的转换方式,这些方法在开发Qt应用程序时非常有用。通过灵活运用这些技巧,可以更高效地处理字符串和其他数据类型的问题。
在本文中,我们将深入探讨如何使用Qt库与西门子PLC进行通信,特别是通过SNAP7库实现这一目标。SNAP7是一个开源的库,它允许与西门子S7系列PLC进行通信,而Qt则是一个跨平台的C++图形用户界面库。这个示例将帮助...
Qt中可以使用`QByteArray`存储接收到的数据,然后用`QJsonDocument::fromJson()`解析成JSON对象。 6. **错误处理**:别忘了检查curl的返回值,如`curl_easy_perform()`的结果,以及使用`curl_easy_strerror()`获取...
本文将深入探讨如何在QT中使用C++编写客户端和服务端的socket通信代码,以及涉及到的关键操作。 首先,我们需要理解Socket的基本概念。Socket是网络通信中的一个抽象接口,它提供了一种在不同进程间进行网络通信的...
它提供了连接到服务器(`connectToHost(const QString &host)`)、开始请求(`start(QHttp::Command cmd, const QUrl &url)`)以及处理响应(`setFinishedSlot(QObject *receiver, const char *member)`)等方法。...
在Qt框架中,Zlib库是一个非常重要的工具,它提供了数据压缩和解压缩的功能。Zlib是一个开源的库,广泛应用于网络传输、文件压缩等多种场景。在Qt中整合Zlib,可以实现对数据流的高效处理,比如压缩或解压缩文件、...
int main(int argc, char *argv[]) { QApplication a(argc, argv); Widget w; w.show(); return a.exec(); } ``` 然后,我们关注`Widget`类。在`widget.h`中,定义一个窗口类,包含用于显示JSON数据的成员...