• 9701阅读
  • 11回复

如何过滤掉指定类型的文件? [复制链接]

上一主题 下一主题
离线风一样
 
只看楼主 倒序阅读 楼主  发表于: 2010-09-14
比如要是想保留除图片类型(.jpg,.png等)的所有文件,应该用什么函数呢?
离线davis45
只看该作者 1楼 发表于: 2010-09-14
QFileDialog::getOpenFileName();
谢谢大家的指教
离线beaujolais
只看该作者 2楼 发表于: 2010-09-15
楼上正解~~
离线风一样
只看该作者 3楼 发表于: 2010-09-15
谢谢楼上两位,但我是想在QListView里显示指定类型文件,请问有什么方法能让QFileSystemModel()显示指定文件吗?
离线风一样
只看该作者 4楼 发表于: 2010-09-15
有朋友知道吗???
离线novesky

只看该作者 5楼 发表于: 2010-09-16
QStringList    QDir::entryList ( const QStringList & nameFilters, Filters filters = NoFilter, SortFlags sort = NoSort ) const
nameFilters设置下就行
离线风一样
只看该作者 6楼 发表于: 2010-09-16
楼上的朋友能说详细点吗?
获得完文件列表以后怎么用呢?另外我是想保留除图片格式类型的所有文件,可以用这个函数吗?
谢谢
离线风一样
只看该作者 7楼 发表于: 2010-09-16
我的意思就是想要过滤指定的文件类型,如过滤掉.jpg类型。
离线beaujolais
只看该作者 8楼 发表于: 2010-09-16
5楼说的很正确~~~无论你用什么来显示你获取到的文件列表,你可以在获取时就过滤掉你不需要的类型。
  1. QStringList filter ;
  2. filter << "*.jpg" << "*.bmp" << "*.jpeg" << "*.png" << "*.gif" ;//你需要的类型
  3. QStringList imageList = imageDir.entryList(filter, QDir::Files |QDir::NoSymLinks,QDir::Name) ;



离线风一样
只看该作者 9楼 发表于: 2010-09-16
回 8楼(beaujolais) 的帖子
嗯这个我知道,我的意思是,现在要做一个过滤掉.jpg类型的文件名列表该如何做?
离线beaujolais
只看该作者 10楼 发表于: 2010-09-16
Re:回 8楼(beaujolais) 的帖子
引用第9楼风一样于2010-09-16 13:44发表的 回 8楼(beaujolais) 的帖子 :
嗯这个我知道,我的意思是,现在要做一个过滤掉.jpg类型的文件名列表该如何做?


不是很明白你的意思,你说的过滤是这种行为么?

1。读取硬盘上某个文件夹内的信息
2。不读取后缀为.jpg的图片
3。将获取到的文件名称用列表显示(比如QListWidget)

如果是的话,我刚贴的代码已经实现了啊,

你只需稍作改动在filter中将*.jpg去掉~~~

然后imageList 中就是文件名了~~
离线风一样
只看该作者 11楼 发表于: 2010-09-16
我说的就是这个意思,但我现在就是不知道该如何去掉*·jpg,你设置的FILTER只是设置保留哪些文件类型,那怎么设置过滤哪些文件类型呢?
快速回复
限100 字节
 
上一个 下一个