如果只需要文件大小和创建日期,是否有使用fstat()
功能的替代方法?
我知道我们可以使用ftell()
来获取文件大小,但我也想要创建时间和日期。我不想使用fstat()
的原因是,如果文件列表很长,则需要花费很多时间。
答案 0 :(得分:3)
如果文件已打开,请使用fstat
如果您只有文件名并且不在乎打开文件,请使用stat
。它的速度和它一样快。无论你使用什么其他功能,都会在内部使用stat
或fstat
,或者至少在内核中使用它们。那些系统调用需要从文件系统中读取元数据,如果它不在缓存中,它将进入磁盘并花费时间。没有办法绕过它。