使用lua

时间:2015-11-02 04:35:48

标签: file time lua

如何获取文件的创建时间?

我发现了什么: Lua的lfs库包含一个获取文件属性的方法。然而,唯一似乎接近回答我的问题的是那些:

  • 访问权限 - 上次访问时间
  • 修改 - 上次修改数据的时间
  • 更改 - 上次文件状态更改的时间

根据他们的描述,他们都没有具体检查创建时间。 我已经谷歌搜索了一段时间,无法找到答案。

编辑:我在Windows系统上。

2 个答案:

答案 0 :(得分:2)

Windows命令行提供参数/T:C以显示在dir命令的上下文中使用时的文件创建日期/时间。

因此,您可以使用io.popen函数,如下所示:

local sOut = io.popen( "dir /T:C *files*", "r" )
local sData = sOut:read "*a"
-- process sData as string to filter content as your needs

答案 1 :(得分:1)

至少在Unix上,你不能。在struct stat中有三个与时间相关的成员:

  • st_atime上次访问的时间。
  • st_mtime上次修改数据的时间。
  • st_ctime上次状态更改的时间。

有些人误解st_ctime文件创建时间,但事实并非如此。在Unix风格的系统中不保留文件创建时间。

最接近上次状态更改时间,您可以使用lfs library获取,或者阅读How can I get last modified timestamp in Lua获取没有第三方库的解决方案。