添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
void main_ui::getFiles(/*const QString &fileSuffix*/)
    QString currDir = QString("%1/Files/").arg(QDir::currentPath());
    QDir Dir(currDir);                              			//查看工作路径是否存在
    //if(!Dir.exists()){  Dir.mkdir(currDir);}       	        //如果文件夹不存在则新创建文件夹
    Dir.setFilter(QDir::Files);                     			//设置过滤器只查看文件
    QStringList list = Dir.entryList(QDir::Files);  			//获取所有文件
    foreach (QFileInfo file, list)                  			//遍历只加载.txt到文件列表
        if(file.fileName().split(".").back() == /*"txt"*/fileSuffix)          //判断进行再次确认是.txt文件
            ui->logName->addItem(file.fileName()/*.split(".").at(0)*/);

你能想到的一些对文件夹得操作QDir类基本上都帮你实现了,
例如:
1.void setNameFilters(const QStringList &nameFilters):设置查看文件过滤器,可以快速定位你想查找文件格式;
2.bool QDir::exists(const QString &name) const:调用文件是否存在,存在返回真,否则返回假;
此处不多介绍,更多方法怎么使用,如何使用,去看Qt帮助文档,英语不好的童鞋正好借此机会提升下与帮助文档中陌生单词见面的机会;

over:

欢迎大家关注作者在文末评论、点赞、转发以及批评指正!
如果大家有更好的方法或有问题可以在文末评论一起讨论!
共同学习!
共同进步!

文末一句话:

老实本没错,错的是没有把握一个“老实”的度;

您可以使用QDirIterator一次遍历一个目录。它类似于QDir::entryList()和QDir::entryInfoList(),但因为它一次只列出一个条目,而不是一次列出所有条目,它的扩展性更好,更适合大目录。之前我们看到很多用递归的方式进行遍历的,用迭代器方法的效率 用法一:列举全部文件(不包含链接) QString path = "目标路径"; QDirIterator iter(path, QDir::Files | QDir::NoS
获取指定文件夹下的所有文件(*.tiff *.tif): mFolderPath = QFileDialog::getExistingDirectory(NULL, "Open Folder", "F:\\FocusImgs\\imgs\\a1"); if (mFolderPath.isEmpty()) re...
在做一个项目的时候,需要获取一个指定的文件夹下的所有子文件夹下的所有文件的全路径,这样将所有文件的绝对路径取到,然后对这些文件进行处理。 在发现没有相关的Qt自带的函数后,自己写了如下的函数。 头文件: #ifndef ALLFILESORPATHINDIR_H #define ALLFILESORPATHINDIR_H #include #include class AllF
void player::on_pushButton_2_clicked() QString path=QFileDialog::getOpenFileName(this,tr("选择一首歌曲"),"/","*.mp3"); QFileInfo fileInfo; fileInfo=QFileInfo(path); QString fileName=fileIn
QStringList filter; filter << "*.txt"; QFileInfoList files = dir.entryInfoList(filter, QDir::Files); for(int i QStringList nameFilters; nameFilters << "*.jpg" << "*.png"; QStringList files = dir.entryList(nameFilters, QDir::Files|QDir::Readable, QDir::Name); return f 需要获取指定目录下的所有xml文件,然后统计xml文件数量,并且将每一个xml文件名都显示出来 QDir *dir=new QDir("D:/qttest/build-Xmltool-Desktop_Qt_5_12_2_MinGW_32_bit-Debug/debug/xml"); QStringList filter; filter<<"*.xml"; dir->setNameFilters(filter); QList< #include <QDebug> //作为打印程序运行结果使用 QStringList Server_TCP::Tcp_Server_Get_Photo_Dir(QString file_path){ file_path = ".//photo"; QDir dir(file_path);