我想编写一个 C++ 函数,用目录中所有文件的文件名填充一个 vector 。此外,我希望这个 vector 按文件的最后修改时间排序。
我可以使用 boost::文件系统读取目录中的所有文件并将其传递给 vector ,但这些文件按文件名加载到 vector 中,然后我对文件进行统计并执行排序,这不是非常有效。
有没有人知道一个快速的方法来做到这一点?例如,ls -lhctr 几乎可以立即执行此操作,因此 C++ 也应该能够为大型目录快速执行此操作。
如果可能的话,我也希望它具有亚毫秒分辨率。
最佳答案
也许 map/multimap<std::time_t/dt::ptime, std::string/fs::path>
?
关于c++ - 通过修改时间获取目录下的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11368735/