我试图从它的 inode 找出文件的创建时间。我已经使用 gmtime() 转换为正常时间。但与 ls -l 命令显示的时间相差 6 小时 30 分钟。
为什么会这样?如何消除这种差异?
来自man gmtime
The gmtime() function converts the calendar time timep to broken-down time representation, expressed in Coordinated Universal Time
(UTC).
...............
The localtime() function converts the calendar time timep to broken-time representation, expressed relative to the user's specified
timezone.
我假设你正在使用linux。在 unix 中不存储创建时间;您只有上次访问时间 (atime)、上次修改内容时间 (mtime) 和上次修改 inode 时间 (ctime)。
因此,检查您从 inode 检索的内容并与 ls -l 进行比较