QByteArray 过滤到剩下数字 QT
时间: 2024-11-14 14:23:38 浏览: 2
Qt中QString、QByteArray、int、double之间转换 - 苦涩的茶 - 博客园1
在Qt中,`QByteArray`是C++的字节序列容器,类似于C语言中的数组。如果你想从`QByteArray`中筛选出数字,可以利用Qt提供的`fromLocal8Bit()`和`digitValue()`函数来完成。假设你有一个`QByteArray`包含混合字符:
```cpp
#include <QByteArray>
#include <QChar>
// 假设你有这样一个QByteArray
QByteArray input = "abc123Hello456";
QByteArray filteredArray;
for (int i = 0; i < input.size(); ++i) {
QChar ch = input.at(i);
if (ch.isDigit()) { // 判断字符是否为数字
filteredArray.append(ch.toNumber()); // 使用digitValue()转换成整数并追加到新的数组
}
}
// 输出过滤后的QByteArray
qDebug() << "Filtered QByteArray with numbers: " << filteredArray;
```
这段代码会创建一个新的`QByteArray`,其中仅包含原数组中的数字。
阅读全文