我试图编写一个方法来监控目录中要创建的文件。此文件的扩展名为.complete
。如果不存在,我想等待它出现。当它出现时,我想在扩展名之前找到提取文件的名称,删除.complete
文件,进行一些处理,然后返回监听新的.complete
文件。
这是我到目前为止所拥有的。我想我只需要帮助提取文件的名称,假设我正确地做了通配符。
while(1) {
if (!boost::filesystem::exists("/var/test/*.complete")) {
cout << ".complete file does not exist" << endl;
}
else {
//extract name of .complete file minus extension
//do my processing
system("rm *.complete");
}
}
答案 0 :(得分:0)
我不习惯提升,但只需几步就可以得到你想要的东西
步骤1:阅读目录(readdir或同等版本)
步骤2:您将把目录中包含的所有文件作为const char *
步骤3:获取std :: string而不是const char *
第4步:fileName.find(“。complete”)
你明白了:)
答案 1 :(得分:0)
我想通了
我使用了以下答案中的get_all函数,并将其添加到我的程序中 How to get list of files with a specific extension in a given folder