通过FILETIME得到时间
FILETIME結構:
#ifndef _FILETIME_
#define _FILETIME_typedef struct _FILETIME {
??? DWORD dwLowDateTime;
??? DWORD dwHighDateTime;
} FILETIME, *PFILETIME, *LPFILETIME;
#endif
ULARGE_INTEGER結構:
#if defined(MIDL_PASS)
typedef struct _ULARGE_INTEGER {
#else // MIDL_PASS
typedef union _ULARGE_INTEGER {
??? struct {
??????? DWORD LowPart;
??????? DWORD HighPart;
??? } DUMMYSTRUCTNAME;
??? struct {
??????? DWORD LowPart;
??????? DWORD HighPart;
??? } u;
#endif //MIDL_PASS
??? ULONGLONG QuadPart;
} ULARGE_INTEGER;
code:
FILETIME ft;
GetSystemTimeAsFileTime(&ft);
ULARGE_INTEGER epoch; // UNIX epoch (1970-01-01 00:00:00) expressed in Windows NT FILETIME
?? ?epoch.LowPart? = 0xD53E8000;
?? ?epoch.HighPart = 0x019DB1DE;
?? ?ULARGE_INTEGER ts;
?? ?ts.LowPart? = ft.dwLowDateTime;
?? ?ts.HighPart = ft.dwHighDateTime;
?? ?ts.QuadPart -= epoch.QuadPart;
Int64 a = ts.QuadPart/10;
a就是從1971-01-01 00:00:00以來的微妙數
總結
以上是生活随笔為你收集整理的通过FILETIME得到时间的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 15 - java 继承
- 下一篇: java 复制字段_java - 在构造