在 Windows 和 C++ 中。我有以下代码。
typedef struct _FILETIME {
DWORD dwLowDateTime;
DWORD dwHighDateTime;
} FILETIME, *PFILETIME, *LPFILETIME;
struct DateTime
{
unsigned int dwLowDateTime;
unsigned int dwHighDateTime;
};
FILETIME ftTime;
GetSystemTimeAsFileTime(&ftTime);
DateTime myTime;
myTime.dwHighDateTime = (unsigned int)ftTime.dwHighDateTime;
myTime.dwLowDateTime = (unsigned int)ftTime.dwLowDateTime;
现在我需要分配值,例如
2012-06-25 12:00:10.123
到“myTime”或 ftTime。
我怎样才能做到这一点?
另一个问题是如何获得日期“2012-06-25 12:00:10.123”的 64 位整数等经过的秒数?如何将其转换为 __int64 以便分配给 FILETIME?
我在另一个问题帖子中看到
__int64 t;
FILETIME ft;
ft.dwLowDateTime = (DWORD)t;
ft.dwHighDateTime = (DWORD)(t >> 32);
我不应该在我的项目中使用 Boost。
谢谢!