Qt——获取指定文件夹下的所有文件及指定文件夹下的所有文件夹

头文件包含

#include 

代码实现

获取指定文件夹下的所有文件(*.tiff *.tif):

	mFolderPath = QFileDialog::getExistingDirectory(NULL, "Open Folder", "F:\\FocusImgs\\imgs\\a1");
	if (mFolderPath.isEmpty()) return;
	// 获取所有文件名
	QDir dir(mFolderPath);
	mFolderPath = dir.fromNativeSeparators(mFolderPath);//  "\\"转为"/" 
	if (!dir.exists()) mImgNames = QStringList("");
	dir.setFilter(QDir::Files);
	dir.setSorting(QDir::Name);
	dir.setNameFilters(QString("*.tiff;*.tif").split(";"));
	mImgNames = dir.entryList();
	for (int i = 0; i < mImgNames.size(); ++i)
	{
		qDebug() << "entryList: " << i << "-" << mFolderPath + "/" +mImgNames[i];
	}

获取指定文件夹下的所有文件夹

	// 获取所有文件夹名
	QDir dir(mFolderPath);
	mFolderPath = dir.fromNativeSeparators(mFolderPath);//  "\\"转为"/" 
	if (!dir.exists()) mImgNames = QStringList("");
	dir.setFilter(QDir::Dirs | QDir::NoDotAndDotDot);
	dir.setSorting(QDir::Name);
	mImgNames = dir.entryList();
	for (int i = 0; i < mImgNames.size(); ++i)
	{
		qDebug() << "entryList: " << i << "-" << mFolderPath + "/" +mImgNames[i];
	}

你可能感兴趣的:(Qt,qt,开发语言,c++)