Qt QString"键值"从QHash取代

时间:2012-08-09 13:23:51

标签: c++ qt string-parsing qstring qhash

我有一个QString,内容看起来像这样:

分辨率= [ IMAGESIZE ]&安培;质量= [ imagequal ] ”。

我有一个QHash<QString, QString> mDefaults容器,其中包含一些包含某些“关键”值的列表。 (“ imagesize ”和“ imagequal ”被称为“密钥”,我需要用哈希容器中的值替换)

mDefaults.insert("imagesize", "320x240");
mDefaults.insert("imagequal", "standard");

我的目标是获得一个看起来像这样的字符串: “分辨率= 320x240 &amp; quality = 标准”(请注意“[”和“]”也已消失)

有没有快速/好的方法用Qt库进行这种字符串键值替换?

感谢。

1 个答案:

答案 0 :(得分:2)

for(QMap::iterator i=mDefaults.begin();i!=mDefaults.end();++i) {
    myString.replace(QString("[%1]").arg(i.key()), i.value());
}