C++读取某目录下含有特定名称的文件

读取某目录下特定的文件,例如有“abc.txt”和“ab.txt”两个文件,怎么做到只读取后者?用findfirst,findnext函数能实现吗

FindFirstFile/FileNextFile()得到以后自己判断一下文件名称不就行了~

这个是VS下的,感觉只能查找出来以后比较文件名字然后排除掉abc.txt
在linux操作系统下,编译器用findfirst(),而不是_findfirst().
linux操作系统下的查找文件的操作,需要包含dirent.h头文件

 #include <stdio.h>
 #include<iostream>
#include<io.h>
using namespace std;
int main()
{
    long Handle;
    struct _finddata_t FileInfo;
    if((Handle=_findfirst("F:\\*.txt",&FileInfo))==-1L)
        printf("没有找到匹配的项目\n");
    else
    {
        if(strcmp(FileInfo.name, "ab.txt") == 0)
        {
            printf("%s\n", FileInfo.name);
        }
        while(_findnext(Handle,&FileInfo)==0)//成功返回0,失败返回-1
        {
            if(strcmp(FileInfo.name, "ab.txt") == 0)
            {
                printf("%s\n", FileInfo.name);
            }
        }
        _findclose(Handle);
    }
    system("pause");
    return 0;
}

图片说明