繁体   English   中英

将 QString 十六进制转换为 ASCII 值

[英]Convert QString hexadecimal to ASCII value

我的目标是将包含在 QString 中的十六进制值转换为其 ASCII 值

我有 :

QString hexaValue = receiveText.left(14); // receive texte is another QString

我的问题是,我的十六进制值在Qstring而不是在QByteArray ,所以我发现的所有解决方案都不起作用,我尝试调用.data()fromHex() ,但这不是在这里工作,因为我被迫使用QString而不是QByteArray

我应该将我的QString转换为QByteArray ,有简单的解决方案吗?

您可以只使用QString::toLatin1将十六进制字符串转换为 QByteArray 并将其转换回 QString 使用QString::fromLocal8Bit进行本地编码或QString::fromUtf8如果您的十六进制编码字符串是 UTF8。

QString hexaValue = receiveText.left(14); // received text is another QString
QString textValue = QString::fromLocal8Bit(QByteArray::fromHex(hexaValue.toLatin1()));

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM