将任何QVariant转换为QString

Convert any QVariant to QString

本文关键字:QString 转换 QVariant 任何      更新时间:2023-10-16

我知道如何将包含QStringQVariant转换为QString:如何将Qvariant转换为QString,反之亦然?

我想问的是如何将任何QVariant转换为QString?即,即使我的QVariant对象具有int,是否有一种简单的方法将其转换为QString

您可以将QVariant::toString用于方法文档中列出的类型。

int value = 1;
QString s = QVariant(value).toString();

您可以使用qString formating

QVariant qv(1);
QString str = QString ("%1").arg(qv.toInt());

您也可能像这样更通用

if(qv.typeName() == QString("QString"))
   str = QString("%1").arg(qv.toString());
else if(qv.typeName() == QString("int"));
   str = QString ("%1").arg(qv.toInt());
...

或使用qv.type()

if(qv.type() == QVariant::String)
    str = QString("%1").arg(qv.toString());
...