检查文件名中是否存在带通配符的文件

时间:2014-07-04 08:02:46

标签: c++ file

我需要什么c ++:

if( fileExists("c:\foo\bar*.txt") ){
  cout << "file exists";
}else{
  cout << "file does not exists";
}

它与此处描述的几乎相同:How to check a file if exists with wildcard in Java?,但对于c ++

1 个答案:

答案 0 :(得分:1)

由于您尚未指定平台,因此有几个选项。对于符合POSIX标准的系统,有the answer from this solution(不是我的信用):

  

您可以使用[glob()] [1] POSIX库函数。

或者对于Windows,有this solution

  

setargv.obj(或wsetargv.obj)和argv []的链接将为您提供全局内容,类似于Unix shell的操作方式:

           

我无法保证它的表现如何。

或者对于一个简单的跨平台库,您可以尝试shwildwildcmp或使用this question的答案自己编写。