【发布时间】:2020-11-24 22:41:42
【问题描述】:
我试图在 C++ 中查找最后修改的文件(基于时间戳)。 假设目录中有很多文件,但如何获取最后修改的文件? 我曾尝试使用 dirent.h 但需要包含一个额外的头文件并使用 stat 但在 stat 中,我可以获得文件的唯一日期。 有什么办法可以获取目录中所有文件的名称,然后一一读取?
谁能帮帮我? 一个小代码 sn-p 将不胜感激。
操作系统:Windows
【问题讨论】:
-
如果您有 C++17 或更高版本,您也许可以使用
<filesystem>执行此操作。不过,我对标准库的这一部分还不够了解。 -
"有没有办法从 C++ 目录中找到最后修改的文件?" - 不,当然不。这是一个无法解决的问题。几十年来,操作系统和文件系统的实现者一直在努力解决这个难题。这是不可行的——它需要时间戳和排序——我们尚未发现的技术。 当然这是可行的!
-
@JesperJuhl 虽然不需要排序。您需要做的就是查看每个文件并记住哪个是最新的。
-
@eerorika 当然。但我想我还是说出了我的观点。该评论并未完全考虑到 100% 的准确度。
标签: c++ windows file file-handling