zoukankan      html  css  js  c++  java
  • 【文件】读取一个文件夹下所有的jpg图片

    今天做视频处理的时候,发现给的视频是用jpg图片的形式给出的,名字的命名规律性不是很强。就想找一种通用的遍历文件夹下图片的方法。

    开始在网上找到了下面这份代码,发现只能读取所有的文件夹,文件都被跳过了

    后来发现,原来是判断的if语句出了问题。dwFileAttributes有很多种属性如:

    FILE_ATTRIBUTE_ARCHIVE
    FILE_ATTRIBUTE_COMPRESSED
    FILE_ATTRIBUTE_DIRECTORY
    FILE_ATTRIBUTE_HIDDEN
    FILE_ATTRIBUTE_NORMAL
    FILE_ATTRIBUTE_OFFLINE
    FILE_ATTRIBUTE_READONLY
    FILE_ATTRIBUTE_SYSTEM
    FILE_ATTRIBUTE_TEMPORARY

    当采用if(findData.dwFileAttributes&FILE_ATTRIBUTE_DIRECTORY) 时,表示只显示其中的文件夹

    后来我把条件换为了if(findData.dwFileAttributes&FILE_ATTRIBUTE_ARCHIVE  ) 就可以得到图片文件了

    修改后的代码如下:

    #include <windows.h>
    #include <stdio.h>
    
    
    
    int main(int argc,char *argv[])
    {
        char szFileName[]="F:\1_1_02_0\dongcemen_6_1280x720_30_R1\*.jpg";//查找的根目录
        WIN32_FIND_DATA findData;
        HANDLE hFindFile;
        
        hFindFile=::FindFirstFile(szFileName,&findData);
        if(hFindFile!=INVALID_HANDLE_VALUE)
        {
            do
            {
                if(findData.cFileName[0]=='.')
                  continue;
                if(findData.dwFileAttributes & FILE_ATTRIBUTE_ARCHIVE  )
                  printf("%s
    ",findData.cFileName);
            }while(::FindNextFile(hFindFile,&findData));
        }
        getchar();
        return 0;
    } 
  • 相关阅读:
    安装AD域时,出现NetBIOS名称冲突?
    SharePoint Server 2010 安装图解
    Visual C++ 2011519
    Visual C++ 2011520
    Visual C++ 2011518
    Visual C++ 2011520
    设计模式创建型 C++版本
    线程条件变量,一次性初始化
    Visual C++ 2011526
    Visual C++ 2011512
  • 原文地址:https://www.cnblogs.com/dplearning/p/3826316.html
Copyright © 2011-2022 走看看