Qt QList<;QString>;到QString.arg()
我有以下Q字符串:Qt QList<;QString>;到QString.arg(),qt,Qt,我有以下Q字符串: QString funcProxy = "executeProxy(\"%1\", \"%2\", \"%3\")"; 每台计算机的数据如下所示: QList<QString> listProxy; 谢谢如果您知道列表中正好有3个元素,您可以这样做: funcProxy.arg(listProxy.at(0)).arg(listProxy.at(1)).arg(listProxy.at(2)); 否则,您可以使用以下方法: for (int i = 0; i
QString funcProxy = "executeProxy(\"%1\", \"%2\", \"%3\")";
每台计算机的数据如下所示:
QList<QString> listProxy;
谢谢如果您知道列表中正好有3个元素,您可以这样做:
funcProxy.arg(listProxy.at(0)).arg(listProxy.at(1)).arg(listProxy.at(2));
否则,您可以使用以下方法:
for (int i = 0; i < listProxy.size(); ++i)
funcProxy.replace(QString("%%1").arg(i+1), listProxy.at(i));
for(int i=0;i
如果您知道列表中正好有3个元素,您可以这样做:
funcProxy.arg(listProxy.at(0)).arg(listProxy.at(1)).arg(listProxy.at(2));
否则,您可以使用以下方法:
for (int i = 0; i < listProxy.size(); ++i)
funcProxy.replace(QString("%%1").arg(i+1), listProxy.at(i));
for(int i=0;i
关于@owacoder的答案,您实际上不需要replace功能,以下功能应该正确:
for (int i = 0; i < listProxy.size(); ++i) {
funcProxy = funcProxy.arg(listProxy.at(i));
}
关于@owacoder的回答,您实际上不需要replace函数,以下操作应该正确:
for (int i = 0; i < listProxy.size(); ++i) {
funcProxy = funcProxy.arg(listProxy.at(i));
}
我试图避免这样,因为它可能不止三个。每次都不一样。似乎我必须循环它,我试图避免它,因为它可能不止三个。每次都不一样。似乎我必须循环使用它。for循环提供的第一个解决方案是有效的,做得很好。只有qWarning“QString::arg:参数丢失”出现(这很烦人)。第二个解决方案是不为我工作,我做错了什么?参见代码:QStringList args{“a”、“b”、“c”};QString out(“%1-%2-%3”);qDebug()为for循环提供的第一个解决方案正在工作,干得不错。只有qWarning“QString::arg:参数丢失”出现(这很烦人)。第二个解决方案是不为我工作,我做错了什么?参见代码:QStringList args{“a”、“b”、“c”};QString out(“%1-%2-%3”);qDebug()