我正在使用 Qt/KDE 开发应用程序。在为此编写代码时,我需要读取一个 QString ,其中包含像 ( ;
delimited)这样的值
<http://example.com/example.ext.torrent>; rel=describedby; type="application/x-bittorrent"; name="differentname.ext"
我需要将每个属性(如 rel、type 和 name)读入不同的QString
. 到目前为止我采取的方法是这样的
if (line.contains("describedby")) {
m_reltype = "describedby" ;
}
if (line.contains("duplicate")) {
m_reltype = "duplicate";
}
也就是说,如果我只需要对属性的存在(而不是它的值)感到困扰,我将手动查找文本并设置属性是否存在。然而,这种方法对于“类型”和名称等属性的实际值需要存储在QString
. 虽然我知道这可以通过在分隔符处拆分整个字符串;
然后搜索属性或其值来完成,但我想知道是否有一种更清洁、更有效的方法。