Qt 查询字符串数据

(1)函数QString::startsWith(),判断某一个字符串是否以某个字符串开头;该函数具有两个参数,第一个参数制定了一个字符串,第二个参数指定是否大小写敏感,默认大小写敏感;

eg:

 QString str = "Welcome to you !";

str.startsWith("Welcome",Qt::CaseSensitive);//return true

str.startsWith("you",Qt::CaseSensitive);//return false

(2)函数QString::endsWith()功能类似于QString::startsWith()。该函数判断一个字符串是否以某个字符串结尾;

(3)函数QSting::contains() 判断一个指定的字符串是否出现过,

  QString str = "Welcome to you !";

 str.contains("Welcome",Qt::CaseSensitive);

(4) 比较两个字符串也是经常使用的功能

4.1  operator<(const QString&):比较一个字符串是否小于另一个字符串,如果是返回true;

4.2  operator<=(const QString&):比较一个字符串是否小于等于另一个字符串,如果是返回true;

4.3  operator==(const QString&):比较一个字符串是否等于另一个字符串,如果是返回true;

4.4   operator>=(const QString&):比较一个字符串是否大于等于另一个字符串,如果是返回true;

4.5  localAwareCompare (const QString&,const QString&):静态函数,比较前后两个字符串, 如果前面的小于后面,则返回负整数值,等于返回0;大于返回正整数;

4.6  compare(const QString& ,const QString&,Qt::CaseSensitivity):该函数可以指定是否进行大小写的比较,而大小写的比较是完全基于字符的Unicode编码值的

转载于:https://www.cnblogs.com/hjj-fighting/p/10146455.html

### 使用Qt通过串口发送字符串数据 为了实现通过串口发送字符串数据的功能,在Qt应用程序中可以利用`QSerialPort`类来管理串行端口通信。下面是一个简单的例子,展示了如何配置并打开一个串口连接,以及向该设备写入一段文本消息。 #### 创建 QSerialPort 实例 首先创建 `QSerialPort` 的实例对象,并设置其参数如波特率、数据位数等: ```cpp #include <QCoreApplication> #include <QSerialPort> #include <QDebug> int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); // 初始化串口对象 QSerialPort serial; // 设置串口号(例如 COM3 或 /dev/ttyUSB0) serial.setPortName("/dev/ttyS1"); // 配置串口属性 serial.setBaudRate(QSerialPort::Baud9600); // 波特率为 9600 bps serial.setDataBits(QSerialPort::Data8); // 数据长度为 8 bits serial.setParity(QSerialPort::NoParity); // 奇偶校验无 serial.setStopBits(QSerialPort::OneStop); // 停止位为一位 serial.setFlowControl(QSerialPort::NoFlowControl);// 流量控制关闭 if (!serial.open(QIODevice::WriteOnly)) { qDebug() << "Failed to open port"; return -1; } } ``` #### 发送字符串到串口 一旦成功打开了串口,则可以通过调用`write()`方法将要传输的数据转换成字节数组形式传送给目标硬件;之后还需要调用`waitForBytesWritten()`等待所有字符都被实际写出缓冲区[^1]。 ```cpp // 准备待发送的消息 QString message = "Hello Serial Port!"; if(serial.isOpen()){ // 将 QString 转化为 QByteArray 并尝试发送出去 bool success = serial.write(message.toUtf8()) != -1 && serial.waitForBytesWritten(3000); if(!success){ qDebug()<<"Error writing data."; }else{ qDebug()<<"Message sent successfully."; } // 关闭串口资源释放 serial.close(); }else{ qDebug()<<"The port is not opened yet."; } ``` 上述代码片段实现了基本的串口初始化过程和简单文本信息的传送操作。需要注意的是具体的串口号可能因操作系统不同而有所差异,所以在部署前应当确认好对应的物理接口名称[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值