检查文件名中是否存在通配符
check if file exists with wildcards in filename
我需要的c++:
if( fileExists("c:foobar*.txt") ){
cout << "file exists";
}else{
cout << "file does not exists";
}
它几乎与这里描述的相同:如何检查Java中是否存在通配符的文件?,但对于c++
由于没有指定平台,因此有几个选项。对于POSIX兼容的系统,有这个解决方案的答案(信任他不是我的):
可以使用[
glob()
][1] POSIX库函数
对于Windows,有这样的解决方案:
与
setargv.obj
(或wsetargv.obj
)和argv[]链接将为您全局化,类似于Unix shell的操作方式:
- http://msdn.microsoft.com/en-us/library/8bch7bkk.aspx
我不能保证它做得有多好。
或者对于一个简单的跨平台库,您可以尝试shwild或wildcmp,或者编写您自己的库来回答这个问题。
相关文章:
- 表示"accepting anything for this template argument" C++概念的通配符
- 当使用通配符和null指针调用函数时,对输出的说明
- C++17 文件系统::remove_all 带有通配符路径
- 如何允许通配符模板参数
- 使用通配符的跨平台文件列表
- 如何检索由带通配符的字符串索引的对象
- 有效地查找通配符条目
- 具有不同输入和输出名称的生成文件通配符
- MinGW GCC通配符编译所有文件(Windows)
- Windows 上带有通配符的目录中的文件
- 查找第一个文件W通配符匹配
- 在某些情况下,通配符模式匹配失败
- 实现通配符后没有输入文件错误
- 如何为文件对话框过滤器设置通配符
- 使用通配符搜索QTableWidget时出现问题
- 为什么 std::experimental::filesystem::p ath 不接受像 "*" 这样的通配符?
- 在三元搜索树中搜索(NOT with)通配符
- SQLite如何在列上使用LIKE并添加通配符
- 带有通配符的 ifstream
- 检查文件名中是否存在通配符