Github源码下载地址:https://github.com/jbyyy/searchLocalFile
1.查找当前路径下的文件
QStringList MainWindow::findFile(QString path)
QDir dir(path);
path = dir.fromNativeSeparators(path);
QStringList allFile = QStringList("");
dir.setFilter(QDir::Files);
dir.setSorting(QDir::Name);
allFile = dir.entryList();
return allFile;
1.1调用方法
void MainWindow::on_pushButton_findFile_clicked()
QString FileFolder = QFileDialog::getExistingDirectory( this, "choose Directory", "/");
if(!FileFolder.isEmpty())
QStringList files = findFile(FileFolder);
for(int i=0; i<files.size(); i++)
ui->textEdit->append(QString("文件名:%1").arg(files.at(i)));
2.查找当前路径下的子目录
QStringList MainWindow::findFolder(QString folder)
QDir dir(folder);
folder = dir.fromNativeSeparators(folder);
QStringList allFolder = QStringList("");
dir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot);
dir.setSorting(QDir::Name);
allFolder = dir.entryList();
return allFolder;
2.1调用方法
void MainWindow::on_pushButton_fileDir_clicked()
QString FileFolder = QFileDialog::getExistingDirectory( this, "choose Directory", "/");
if(!FileFolder.isEmpty())
QStringList folders = findFolder(FileFolder);
for(int i=0; i<folders.size(); i++)
ui->textEdit->append(QString("子目录:%1").arg(folders.at(i)));
3.递归查找当前路径下所有文件
void MainWindow::findAllFiles(QString folder)
QStringList Files =findFile(folder);
for(int i=0; i<Files.size(); i++)
FolderPath.append(QPair<QString,QString>(folder,Files.at(i)));
QStringList Folder = findFolder(folder);
for (int i = 0; i < Folder.size(); ++i)
findAllFiles(folder+"/"+Folder[i]);
3.1调用方法
void MainWindow::on_pushButton_findAllFiles_clicked()
FolderPath.clear();
QString FileFolder = QFileDialog::getExistingDirectory( this, "choose Directory", "/");
if(!FileFolder.isEmpty())
findAllFiles(FileFolder);
for(int i=0; i<FolderPath.size(); i++)
ui->textEdit->append(QString("文件名:%1\n文件路径:%2\n").arg(FolderPath.at(i).second).arg(FolderPath.at(i).first));
然后,使用不同的接口获取了该文件的各种属性和信息,并进行输出。最后,通过遍历文件信息列表,我们输出了每个文件和目录的名称。上述代码将遍历目录 “C:/MyFiles” 下的所有文件,输出每个文件的名称、大小和最后修改时间等信息。例如,如果你想获取目录下的所有文件和目录信息(包括子目录),可以使用。请注意,在实际应用中,你可能需要先判断目录是否存在,以及对可能出现的异常情况进行适当的处理。在使用这些接口时,需要注意文件是否存在,避免在文件不存在的情况下调用这些接口可能导致的异常。,表示要获取文件信息的目录。
平时经常需要qt实现文件读取,每次都是直接百度需求,这里整理下用过的文件相关操作
平时主要参考这两位博客,有需求直接搜索,只要他们写过,问题一定很好解决(
https://blog.csdn.net/feiyangqingyun
https://me.csdn.net/u011012932
一去二三里
得到文件下所有文件和其路径
bool FindFile(const QString ...
在UML类图中,常见的有以下几种关系:泛化(Generalization), 实现(Realization),关联(Association),聚合(Aggregation),组合(Composition),依赖(Dependency)
获取指定文件夹下的所有文件(*.tiff *.tif):
mFolderPath = QFileDialog::getExistingDirectory(NULL, "Open Folder", "F:\\FocusImgs\\imgs\\a1");
if (mFolderPath.isEmpty()) re...
你需要将`/path/to/directory`替换为你要获取内容的目录路径。请注意,使用`entryList()`函数时,可以通过传递不同的参数来过滤所需的内容。// 获取目录中的子目录。// 获取目录中的文件。在Qt中,你可以使用QDir类来获取目录内容。
上述代码中,setFilter()函数可以设置过滤条件,只获取文件或文件夹,并且排除.和..两个特殊目录。最后,entryList()函数返回获取到的所有文件(包括子文件夹中的文件)的列表。然后,使用entryInfoList()函数获取所有文件信息的列表,遍历列表,将文件夹名称添加到一个新列表中。这个时候,可以使用QDir类的entryList()函数获取所有文件名,然后遍历文件名列表,将文件夹名称添加到一个新列表中即可。其中,folder_path为文件夹的路径,files为获取到的所有文件名的列表。
QDir dir(strDirpath);
QFileInfoList Info_list = dir.entryInfoList(QDir::Dirs | QDir::NoDotAndDotDot);
QListIterat...
#include <QDebug> //作为打印程序运行结果使用
QStringList Server_TCP::Tcp_Server_Get_Photo_Dir(QString file_path){
file_path = ".//photo";
QDir dir(file_path);