我有一个QFileInfoList(列表),其中包含有关目录及其文件的信息
QFileInfoList list = directory.entryInfoList();
Run Code Online (Sandbox Code Playgroud)
如何应用过滤器来删除除图像文件(jpg,gif,png等)之外的所有内容?
这是一个简单的foreach循环,只删除不是文件的所有内容
foreach (QFileInfo f, list){
if (!f.isFile()){
list.removeOne(f);
}
Run Code Online (Sandbox Code Playgroud)
如何应用过滤器来删除除图像文件(jpg,gif,png等)之外的所有内容?
Sco*_*ott 17
QDir :: entryInfoList()采用名称过滤器,如果您可以通过扩展来确定图像:
QStringList nameFilter;
nameFilter << "*.png" << "*.jpg" << "*.gif";
QFileInfoList list = directory.entryInfoList( nameFilter, QDir::Files );
Run Code Online (Sandbox Code Playgroud)