QT获取某个文件夹下 某格式文件的数量
int GetRSSCount()
{ int count=0; QDir myDir(RSS_SEEDINNEW); QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8")); for(unsigned int i=0;i<myDir.count();i++) { QString sext=myDir[i].toLower(); if(-1!=sext.indexOf(".xml")) count++; } return count; } 以下处理文件夹中还有文件夹情况 void GetFileCount(QString RSS_seedPath) { QDir myDir(RSS_seedPath); QFileInfo finfo; QFileInfo finfotemp; QTextCodec::setCodecForTr(QTextCodec::codecForName("UTF-8")); for(unsigned int i=0;i<myDir.count();i++) { finfo = QFileInfo(myDir.filePath(myDir[i])); //目录下每个文件的文件信息 if ((finfo.fileName() == ".") || (finfo.fileName() == ".."))//这两个目录不需要 { continue; } if(finfo.isDir()) { GetRssFileCount(myDir.filePath(myDir[i])); //如果是文件夹 则递归调用 } else { QString sext=myDir[i].toLower(); if(-1!=sext.indexOf(".xml")) { g_Rss_seed.filepath.append(myDir.filePath(myDir[i])); g_Rss_seed.filename.append(myDir[i]); seedcout+=1; } } } } |