如何将QVariant
转换为QJsonValue
?我知道QVariant
提供toJsonValue
功能,但没有按预期执行。
例如:
qDebug()<<QVariant(1.0).toJsonValue();
qDebug()<<QVariant("test").toJsonValue();
两个返回:
QJsonValue(null)
QJsonValue(null)
期望输出:
QJsonValue(double, 1)
QJsonValue(string, "test")
您也可以使用此静态功能:
QJsonValue::fromVariant( myVariant )
检查此链接以获取更多信息。
您可以执行以下操作:
QVariant dblVariant(1.0);
QVariant strVariant("test");
QJsonValue dblJs(dblVariant.toDouble());
QJsonValue strJs(strVariant.toString());
您的方法不起作用,因为变体对象应具有用户类型QJsonValue
,但事实并非如此。因此,它返回默认构造的 QJsonValue
对象。