我有一个QString,看起来就像这样的。
QString args = "perl /path#to#a#pe#lprogram -conf /path#to#a#conf#file -outdir /path#to#output#dir -outfile /path#to#output#file"
我想将#path#路由到#output #dir和/ path#分配给#output#file"在-outdir和-outfile之后到达新的QString变量。
我是QT的新手。
答案 0 :(得分:0)
最简单的解决方案是将args
拆分为字符串,并在字符串列表中搜索outdir
和outfile
。
使用此功能http://qt-project.org/doc/qt-4.8/qstring.html#split
拆分它此外,您应该考虑此课程http://qt-project.org/doc/qt-5/qcommandlineparser.html
答案 1 :(得分:0)
感谢您的所有评论(特别是Ashot)。这很容易。问题是我对QT功能不熟悉。这是代码:
QString args = "perl /path#to#a#pe#lprogram -conf /path#to#a#conf#file -outdir /path#to#output#dir -outfile /path#to#output#file"
QStringList query = args.split(" ");
for (int i=0; i < query.size(); i++)
{
if (query.at(i).contains("-outputdir"))
{
odir = query.at(i+1).trimmed();
}
if (query.at(i).contains("-outputfile"))
{
ofile = query.at(i+1).trimmed();
}
}
谢谢你!