首页
社区
课程
招聘
求一时间转换算法
发表于: 2011-5-27 15:06 6057

求一时间转换算法

2011-5-27 15:06
6057
本小菜在工作时需要获取某下载软件的下载记录,无奈发现其下载记录的时间不晓得是怎么回事,一般时间格式就那几种,比如FILETIME,COleDateTime,__time32_t ,__time64_t ,time_t 等几种,我要处理的记录的时间都是一个bigint类型的,但是问题就是:一般的这些时间转成bigint型数据要么是18位的(FILETIME转换),或者10位的数据(其他几种时间转成的),这玩意结果是个17位的,本来想调试一下是怎么搞的,结果该软件进行了反调试处理,一丢入OD就崩溃。由于本人太菜了,这点小问题都处理不了了,只有到此来向大侠们求教了。望大侠们不吝赐教。提前谢过了。另外,本人通过修改其数据库对应字段值发现,当原始数据为0时,翻译后对应的时间为1970-1-1 08:00,初步估计是通过FILETIME进行了处理的,不知道大侠们能不能提供些意见和建议。
部分数据:
原始数据                                 翻译后对应的时间
21811710964793344        2011-03-14 13:08
21794306314469376        2011-03-02 12:58
21791330824880128        2011-02-28 11:42
21788670159749120        2011-02-26 15:39
21786021406441472        2011-02-24 19:47
21784289645428736        2011-02-23 15:07
21784059059372032        2011-02-23 11:18
21784045369163776        2011-02-23 11:04
21794306314469376        2011-03-02 12:58
21791330824880128        2011-02-28 11:42
21788670159749120        2011-02-26 15:39
21786021406441472        2011-02-24 19:47
21784289645428736        2011-02-23 15:07
21784059059372032        2011-02-23 11:18
21784045369163776        2011-02-23 11:04

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (2)
雪    币: 1751
活跃值: (1611)
能力值: ( LV12,RANK:222 )
在线值:
发帖
回帖
粉丝
2
time_t 无误

#include <stdio.h>
#include <time.h>
/*
21786021406441472  2011-02-24 19:47		4D 66 45 63 00 0000 //16进制 
21784289645428736  2011-02-23 15:07		4D 64 B2 2E 00 0000
21784059059372032  2011-02-23 11:18		4D 64 7C 7E 00 0000
21784045369163776  2011-02-23 11:04		4D 64 79 4E 00 0000
*/

int main()
{
	time_t timep;
	time (&timep);
	timep=0x4D664563;//后面的0是多余的 
	
	tm *ptr;
	ptr=localtime(&timep);
	
	char str[256];
	strftime(str,256,"%Y-%m-%d %H:%M",ptr);
	printf("%s",str);
	
	//打印结果 2011-02-24 19:47	 
	getchar();
}
2011-5-27 16:24
0
雪    币: 321
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3

我在使用的时候把后面的000000也用上了,太……
哎,多谢兄弟(姐妹)哈。

分已到账,结贴。
2011-5-27 17:00
0
游客
登录 | 注册 方可回帖
返回
//