搜索
您的当前位置:首页正文

递归查找文件

来源:易榕旅网
static QStringList FindFilesEx(const QString& strFullName, bool bRecursion = true)
    {
        QStringList tmpFiles;

        QString strPath;
        QStringList strFilters;
        if(!ParsePath(strFullName, strPath, strFilters))
        {
            return tmpFiles;
        }

        tmpFiles = FindFiles(strPath, bRecursion);

        tmpFiles = FilterFiles(tmpFiles, strFilters);
        return tmpFiles;
    }

    static QStringList FilterFiles(const QStringList& strFiles, const QStringList& filters)
    {
        QStringList tmp;

        foreach (const QString &file, strFiles)
        {
            int n = file.lastIndexOf('/');
            QString strName = file.mid(n+1);
            bool addOk = true;
            foreach (const QString &filter, filters)
            {
                if(filter.isEmpty())
                {
                    continue;
                }

                if(strName.indexOf(filt

因篇幅问题不能全部显示,请点此查看更多更全内容

Top