从QVariantList获取字符串

时间:2012-11-25 20:49:06

标签: c++ qt

我的数据库中的数据位于QVariantList中,我想循环遍历它并获取名字。

QVariantList sqlData = database->loadDatabase("quotes.db", "quotes");
for (int i = 1; i <= sqlData.size(); i++)
    {
        qDebug() << sqlData.value(i);
    }

这会产生:

Debug: QVariant(QVariantMap, QMap(("firstname", QVariant(QString, "Glenford") ) ( "id" ,  QVariant(qlonglong, 2) ) ( "lastname" ,  QVariant(QString, "Myers") ) ( "quote" ,  QVariant(QString, "We try to solve the problem by rushing through the design process so that enough time will be left at the end of the project to uncover errors that were made because we rushed through the design process.") ) )  ) 

如何调试“firstname”的值?例如debug = Glenford。

由于

1 个答案:

答案 0 :(得分:5)

QVariant列表是QVariants的列表,该对象具有特定的迭代器。

QVariantList sqlData = database->loadDatabase("quotes.db", "quotes");
for (QVariantList::iterator j = sqlData.begin(); j != sqlData.end(); j++)
{
    qDebug() << "iterating through QVariantList ";
    qDebug() << (*j).toString(); // Print QVariant
}