档案时间

【勇芳软件工作室】汉化HomePreviousNext

A 【文件时间】表示给定文件创建,上次访问或最后写入的具体日期和时间。当应用程序创建,访问和写入文件时,Windows会记录文件时间。Windows使用64位值记录时间,指定自12:00 A.M之后已经过去的100纳秒间隔数。1601年1月1日(UTC)。写入文件会改变最后的写入时间;从文件写入或读取(包括运行可执行文件)会更改最后的访问时间。

注意并非所有文件系统都可以记录创建和上次访问时间。特别地,文件分配表(FAT)文件系统仅记录最后写入时间。

您可以使用GetFileTime功能检索给定文件的文件时间。GetFileTime将创建,上次访问和最后写入时间复制到个人FILETIME结构。每个结构由两个32位值组成,组合形成单个64位值。您还可以使用FindFirstFileFindNextFile功能检索文件时间。这些功能将WIN32_FIND_DATA结构中的时间复制到FILETIME结构。

您可以使用SetFileTime功能设置文件的文件时间。此函数允许您修改创建,上次访问和上次写入时间,而无需更改文件的内容。您可以使用CompareFileTime功能来比较不同文件的时间。该函数比较两个文件时间,并返回一个指示哪个时间较大的值或如果时间相等则返回零。

为了使用户的文件时间更有意义,您可以使用FileTimeToSystemTime功能从文件时间提取日,月,年的时间。FileTimeToSystemTime转换文件时间,并将日期和时间的各个值复制到SYSTEMTIME结构。

Windows以UTC为单位记录所有文件时间,但您可以使用FileTimeToLocalFileTime功能将文件时间转换为时区的本地时间。在向用户显示文件时间之前,应用程序通常会将文件时间转换为本地时间,然后使用FileTimeToSystemTime提取月,日,年和时间。

如果您打算修改给定文件的文件时间,则可以使用SystemTimeToFileTime功能将日期和时间转换为文件时间。您还可以通过调用GetSystemTimeAsFileTime函数获取系统时间FILETIME结构。

如果原始日期和时间在当地时间为您的时区,则可以使用LocalFileTimeToFileTime函数将生成的文件时间转换为UTC。始终确保您使用SetFileTime设置的文件时间是基于UTC的有效时间。