曲径通幽论坛

 找回密码
 立即注册
搜索
查看: 8734|回复: 0
打印 上一主题 下一主题

[文件与IO] GetSystemTimeAsFileTime() -- 取得系统时间作为文件时间

[复制链接]

4918

主题

5880

帖子

3万

积分

GROAD

曲径通幽,安觅芳踪。

Rank: 6Rank: 6

积分
34397
跳转到指定楼层
楼主
发表于 2011-9-9 22:31:45 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
GetSystemTimeAsFileTime() 函数是 SystemTimeToFileTime()     GetSystemTime() 的合体,直接用它要比分别调用两个函数要来得更直接与方便。

函数原型:
[C++] 纯文本查看 复制代码
void WINAPI GetSystemTimeAsFileTime(
  __out  LPFILETIME lpSystemTimeAsFileTime
);

函数只有一个参数,即一个 FILETIME 结构类型指针。

示例程序:
[C++] 纯文本查看 复制代码
int _tmain(int argc, LPTSTR argv[])
{
    HANDLE hFile;

    FILETIME fileTime;
    
    hFile = CreateFile(_T("123.txt"), GENERIC_READ|GENERIC_WRITE, 0, NULL,OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);

    GetSystemTimeAsFileTime(&fileTime);

    SetFileTime(hFile, (LPFILETIME)NULL, (LPFILETIME)NULL, &fileTime);
    
    return 0;
}

运行程序之前查看同目录下的 123.txt 文件:
D:\WindowsAPP\setFileTime\Debug>dir
驱动器 D 中的卷是 WinSoft
卷的序列号是 6EAB-3C0C

D:\WindowsAPP\setFileTime\Debug 的目录

2011/09/09  22:30    <DIR>          .
2011/09/09  22:30    <DIR>          ..
2011/09/09  22:30                 8 123.txt
2011/09/09  22:30            29,184 setFileTime.exe
2011/09/09  22:30           311,648 setFileTime.ilk
2011/09/09  22:30         1,657,856 setFileTime.pdb
               4 个文件      1,998,696 字节
               2 个目录 138,163,007,488 可用字节
运行之后:
D:\WindowsAPP\setFileTime\Debug>dir
驱动器 D 中的卷是 WinSoft
卷的序列号是 6EAB-3C0C

D:\WindowsAPP\setFileTime\Debug 的目录

2011/09/09  22:30    <DIR>          .
2011/09/09  22:30    <DIR>          ..
2011/09/09  22:31                 8 123.txt
2011/09/09  22:30            29,184 setFileTime.exe
2011/09/09  22:30           311,648 setFileTime.ilk
2011/09/09  22:30         1,657,856 setFileTime.pdb
               4 个文件      1,998,696 字节
               2 个目录 138,163,007,488 可用字节
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|曲径通幽 ( 琼ICP备11001422号-1|公安备案:46900502000207 )

GMT+8, 2025-6-18 13:18 , Processed in 0.084575 second(s), 23 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表