uint8_t数组转QString
时间: 2023-10-21 18:06:22 浏览: 173
可以通过以下代码实现:
```cpp
#include <QString>
#include <vector>
#include <algorithm>
QString uint8ArrayToQString(const std::vector<uint8_t>& arr)
{
QString result;
std::for_each(arr.begin(), arr.end(), [&](const uint8_t& c) {
result.append(QChar(c));
});
return result;
}
```
这是一个将`uint8_t`类型数组转换为`QString`类型的函数。您可以将`std::vector<uint8_t>`作为参数传递给函数,并将转换后的`QString`类型返回。在函数中,我们使用了一个`for_each`循环遍历整个数组,并将每个`uint8_t`类型的值转换为对应的`QChar`类型,并将其添加到结果字符串中。最后,我们将结果字符串返回。
相关问题
uint8_t 数组数转化为QString
可以通过QString的fromUtf8()函数将uint8_t数组转化为QString类型。
示例代码:
```c++
#include <QString>
int main()
{
uint8_t arr[] = {72, 101, 108, 108, 111, 32, 87, 111, 114, 108, 100}; // Hello World
QString str = QString::fromUtf8(reinterpret_cast<const char*>(arr));
return 0;
}
```
这里使用reinterpret_cast将uint8_t数组强制转换为const char*类型,然后通过fromUtf8()函数将其转化为QString类型。
QT 中uint8_t数组 转string
可以使用QString的fromUtf8()函数将uint8_t数组转换为QString类型,然后再使用QString的toStdString()函数将QString类型转换为std::string类型。具体代码如下:
uint8_t arr[] = {65, 66, 67, 68};
QString str = QString::fromUtf8(reinterpret_cast<const char*>(arr), sizeof(arr));
std::string result = str.toStdString();
阅读全文