C++中的Glob函數可以幫助我們處理大量的文件。下面是一個簡單的示例代碼,演示如何使用Glob函數處理大量的文件:
#include <glob.h>
#include <iostream>
int main() {
glob_t glob_result;
int ret = glob("path/to/files/*.txt", GLOB_TILDE, NULL, &glob_result);
if (ret == 0) {
for (size_t i = 0; i < glob_result.gl_pathc; ++i) {
std::cout << "Found file: " << glob_result.gl_pathv[i] << std::endl;
}
} else {
std::cerr << "Error globbing files" << std::endl;
}
globfree(&glob_result);
return 0;
}
在上面的代碼中,我們使用glob()
函數來匹配指定路徑下的所有txt文件,并將匹配結果保存在glob_result
結構體中。然后我們遍歷glob_result.gl_pathv
數組,打印出所有匹配到的文件路徑。
需要注意的是,在使用完glob()
函數之后,我們需要調用globfree()
函數來釋放分配的內存。
通過這個示例代碼,我們可以很方便地處理大量的文件,比如查找指定文件夾下的所有文件或特定類型的文件等。