如何将Qvariant转换为QJSONVALUE



如何将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对象。

最新更新