关于 Qt使用QJsonObject解析超范围整数的时候提取value失败 的解决方法

Posted 长沙红胖子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于 Qt使用QJsonObject解析超范围整数的时候提取value失败 的解决方法相关的知识,希望对你有一定的参考价值。

若该文为原创文章,转载请注明原文出处
本文章博客地址:https://blog.csdn.net/qq21497936/article/details/121753902
红胖子(红模仿)的博文大全:开发技术集合(包含Qt实用技术、树莓派、三维、OpenCV、OpenGL、ffmpeg、OSG、单片机、软硬结合等等)持续更新中…(点击传送门)

其他(编程相关)


问题

  json里面有超过32位整数范围的长整形,使用QJsonObject的toInt()解析失败。
  
  


原理

  超范围了,使用toInt()无法解析。


解决方法

  先转换成Variant,然后toLongLong();

_overTime          = jsonObjectResult.value("overtime").toVariant().toLongLong();

  
  

以上是关于关于 Qt使用QJsonObject解析超范围整数的时候提取value失败 的解决方法的主要内容,如果未能解决你的问题,请参考以下文章

Qt使用QJsonDocument、QJsonObject、QJsonArray解析JSON

QtQt中QJsonObject类

如何在 Qt 中使用 QWebChannel 发送 QJsonObject

Qt--解析Json

如何将多个 QJsonObject 添加到 QJsonDocument - Qt

QT使用QJson生成解析Json数据的方法