类型判断:
- QJsonValue v("1");
- QJsonValue v1(1);
-
- qDebug()<
isString();//true - qDebug()<
isBool();//false - qDebug()<
isDouble();//false - qDebug()<
isString();//false - qDebug()<
isBool();//false - qDebug()<
isDouble();//true
isDouble()也可以用于判断整型。
强制转换:
背景:从服务器返回的json数据,可能是int或string类型。
图方便,写一个强制转换函数。
(本地只有int,string,bool类型)
不论json数据是什么类型,本地是什么类型,就强制转换成什么类型。
- QString JsonValue_to_QString(QJsonValue value)
- {
- //value要么是QString,要么是int
- if(value.isString())return value.toString();
- else if(value.isDouble())return QString::number(value.toInt());
- else return "";
- }
- int JsonValue_to_Int(QJsonValue value)
- {
- //value要么是QString,要么是int
- if(value.isString())return value.toString().toInt();
- else if(value.isDouble())return value.toInt();
- else return 0;
- }
- QJsonValue v("1234");
- QJsonValue v1(3333);
-
- qDebug()<<JsonValue_to_QString(v);
- qDebug()<<JsonValue_to_QString(v1);
- qDebug()<<JsonValue_to_Int(v);
- qDebug()<<JsonValue_to_Int(v1);
"1234"
"3333"
1234
3333
- QJsonValue v("0");
- QJsonValue v1(1);
-
- bool k;
- k=JsonValue_to_Int(v);
- qDebug()<
- k=JsonValue_to_Int(v1);
- qDebug()<
false
true
-
相关阅读:
DataTable扩展 列转行方法(2*2矩阵转换)
【Java毕设】基于SpringBoot实现新冠疫情统计系统(Idea+Navicat)
解决ESP32内部RAM内存不足的问题
简单介绍一下 git reflog
74HC595芯片验证
英国入境前需要准备什么?
多线程(四) | 聊聊Callable和Future
性能测试过程
如何解决双因素和多因素身份认证的大问题
protobuf协议详解
-
原文地址:https://blog.csdn.net/weixin_51883798/article/details/136484945