QFileInfoList

简介

FileInfoList用于获得指定目录下所有文件/文件夹的基本信息,QFileInfoList其实是typedef创建的:

typedef QFileInfoList QList<QFileInfo>;

用法

QFileInfoList QDir::entryInfoList ( const QStringList & nameFilters, Filters filters = NoFilter, SortFlags sort = NoSort ) const
用于QDir类返回QFileInfoList类型对象。两个枚举参数filters 和sort 分别用来描述QDir目录下的文件筛选方式和文件排序方式。例如entryInfoList(QDir::Filter::Files, QDir::SortFlag::Name)表示只列出文件(不包含文件夹)、这些文件按名称排序。

QDir dir("E:\\CloudMusic\\"); //定义一个QDir变量,设置路径为当前目录的music文件夹(这里可用绝对路径也可以用相对路径)
QFileInfoList fileinfolist; //文件信息表
fileinfolist = dir.entryInfoList(); //列出所有符合的文件

QT中晒选给定目录下的某一类文件

#include <QApplication>
#include <QWidget>
#include <QDir>
#include <QDirModel>
#include <QStringList>
#include <QString>
#include <QDebug>
#include <QModelIndex>
int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    int i = 0;
    QDir dir("E:\\CloudMusic\\");//定义一个QDir变量,设置路径为当前目录的music文件夹(这里可用绝对路径也可以用相对路径)
    QStringList stringlist_song;//用来保存歌曲名的表
    QFileInfoList fileinfolist;//文件信息表
    QFileInfo fileinfo;//文件信息变量
    QString string_song;//用于保存文件信息字符串
 
    stringlist_song << "*.mp3";//把所有mp3文件加入到stringlist_song表中
    dir.setNameFilters(stringlist_song);//过滤文件
    fileinfolist = dir.entryInfoList();//列出所有符合的文件
    while( i<fileinfolist.length() ){
        fileinfo = fileinfolist.at(i);//把fileinfolist表中某个位置的歌曲名赋给fileinfo变量
        qDebug()<<fileinfo.fileName();
        string_song = fileinfo.filePath();//把fileinfo变量中的文件名转换成QString并赋给string_song
        qDebug()<<string_song;
        //stringlist_song << string_song;//把歌曲名赋给stringlist_song表
        i++;
    }
    QWidget w;
    w.show();
    return a.exec();
}
  • 6
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

阳光开朗男孩

你的鼓励是我最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值