FILETIME, SYSTEMTIME 与 time_t 相互转换
来源:互联网 发布:openal是什么软件 编辑:程序博客网 时间:2024/06/05 15:31
FILETIME, SYSTEMTIME 与 time_t 相互转换
//************************************************************
//FILETIME, SYSTEMTIME 与 time_t 相互转换
//#####SYSTEMTIME 与 FILETIME相互转换#####
//可以使用系统函数
//FileTimeToSystemTime(&ftcreate,&stcreate);
//参数:
//(lpFileTime As FILETIME, lpSystemTime As SYSTEMTIME)
//说明
//根据一个FILETIME结构的内容,装载一个SYSTEMTIME结构
//返回值
//Long,非零表示成功,零表示失败。会设置GetLastError
//参数表
//参数 类型及说明
//lpFileTime FILETIME,包含了文件时间的一个结构
//lpSystemTime SYSTEMTIME,用于装载系统时间信息的一个结构
//#####SYSTEMTIME 与 time_t相互转换#####
//#### Time_tToSystemTime ####
void TimetToSystemTime( time_t t, LPSYSTEMTIME pst )
{
FILETIME ft;
LONGLONG ll = Int32x32To64(t, 10000000) + 116444736000000000;
ft.dwLowDateTime = (DWORD) ll;
ft.dwHighDateTime = (DWORD)(ll >> 32);
FileTimeToSystemTime( &ft, pst );
}
//#### SystemTimeToTime_t ####
void SystemTimeToTime_t( SYSTEMTIME st, time_t *pt )
{
FILETIME ft;
SystemTimeToFileTime( &st, &ft );
LONGLONG ll;
ULARGE_INTEGER ui;
ui.LowPart = ft.dwLowDateTime;
ui.HighPart = ft.dwHighDateTime;
ll = (ft.dwHighDateTime << 32) + ft.dwLowDateTime;
*pt = (DWORD)((LONGLONG)(ui.QuadPart - 116444736000000000) / 10000000);
}
//#### FileTimeToTime_t ####
void FileTimeToTime_t( FILETIME ft, time_t *t )
{
LONGLONG ll;
ULARGE_INTEGER ui;
ui.LowPart = ft.dwLowDateTime;
ui.HighPart = ft.dwHighDateTime;
ll = ft.dwHighDateTime << 32 + ft.dwLowDateTime; //这一步是不是多余的
*t = ((LONGLONG)(ui.QuadPart - 116444736000000000) / 10000000);
//将ui.QuadPart的数据类型ULONGLONG强制转换为time_t的LONGLONG数据类型
}
//
//********************************************************************/
- FILETIME, SYSTEMTIME 与 time_t 相互转换
- FILETIME, SYSTEMTIME 与 time_t 相互转换(zhuan)
- FILETIME, SYSTEMTIME 与 time_t 相互转换
- 两个FILETIME, SYSTEMTIME 与 time_t 相互转换
- FILETIME, SYSTEMTIME 与 time_t 相互转换
- SYSTEMTIME与time_t相互转换
- FILETIME SYSTEMTIME tm time_t
- FILETIME SYSTEMTIME tm time_t
- FILETIME, SYSTEMTIME and time_t
- 如何转换为 Win32 FILETIME 或 SYSTEMTIME 的 UNIX time_t
- time_t和SYSTEMTIME之间的相互转换
- SYSTEMTIME、 time_t、tm 的相互转换
- time_t和SYSTEMTIME之间的相互转换
- FILETIME 、SYSTEMTIME的转换
- time_t和SYSTEMTIME 与TDateTime的转换。
- SYSTEMTIME 与 time_t 之间的转换
- tm ,time_t,SYSTEMTIME转换
- FileTime如何转换为Time_t
- 寻找相同元素的指针
- android toast设置比Toast.LENGTH_SHORT还短的持续时间
- AppCan “移动互联网+” 重构传统企业移动化转型
- SpringMVC访问静态资源的三种方式
- Leetcode: House Robber
- FILETIME, SYSTEMTIME 与 time_t 相互转换
- nagios的安装配置
- Linux下动态加载
- PE10.4工程导入MDK5.11a编译环境
- 多点触控
- 为Ubuntu添加一块新硬盘步骤
- mysql 乱码 解决方案
- 送上最新鲜的互联网行业新闻-【2015-05-14】
- 再次谈谈easyui datagrid 的数据加载