c++ - 在 Qt 中将十六进制字符串转换为 Ascii

标签 c++ mysql qt

我有一个从 MySQL 数据库中获取数据并以十六进制格式显示在表小部件中的查询。

如何转换数据并以 Ascii 格式显示。

代码如下:

ui->table->setItem(rows,1,new 
  QTableWidgetItem(query_ui_table->value("SHOW_NAME").toString()));

因此,该值显示在表中,因为它是从数据库中获取的。

例如:-00540065006c006500730068006f007000700069006e0067

而它应该显示类似“Teleshopping”的内容。

最佳答案

看看QByteArray::fromHex

QByteArray text = QByteArray::fromHex("00540065006c006500730068006f007000700069006e0067");
text.data();            // returns "Teleshopping"

关于c++ - 在 Qt 中将十六进制字符串转换为 Ascii,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37587683/

相关文章:

c++ - 使用 wxFormBuilder 生成 C++ 代码的建议方法是什么?

C++ 在类的 const 方法中将 char 数组分配给 T* 的方法

Mysql更改信息schema的列排序规则和字符集

qt - 让 Qt Creator 查看示例和文档

c++ - QT插槽收到两次信号

c++ - 如何使用 json 解析器的 boost property_tree 创建空数组节点

C++ - 使用 atoi() 时出现未处理的异常

MySQL Blob 不通过 MySQL 查询存储图像,而是使用 Workbench GUI 存储图像?

mysql - 错误 : Unknown character set: 'utf8_unicode_ci'

c++ - Qt deploy 找不到Visual Studio安装目录