类型判断:
- 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
-
相关阅读:
WPF中 ContextMenu 寻找父物体的一种方案
OFDI分国家/省份/行业-对外直接投资流量&存量-面板数据
maven找不到jar包
map和set底层实现【C++】
C++基础知识:冒泡排序(利用C++实现冒泡排序)
Duchefa细胞分裂素丨二氢玉米素 (DHZ)说明书
进程和线程的区别
路由器配置静态和默认路由实现VLAN之间的通信
第42期:MySQL 是否有必要多列分区
【学习笔记】杜教筛
-
原文地址:https://blog.csdn.net/weixin_51883798/article/details/136484945