• 主页
  • Windows SDK/API
  • 基础类
  • ActiveX
  • 数据库及相关技术
  • 网络及通讯开发
  • VCL组件使用和开发

暴简单!系列之六:如何把char s[8] =0x03,0x04,0x28,0x14,0x12这些数据转换到日期控件中?

com235 2003-04-28 02:08:35
暴简单!系列之六:如何把char s[8] =0x03,0x04,0x28,0x14,0x12这些数据转换到日期控件中?

表示:03年4月28号14点,12分?

还有,反之,控件中的东西到 s[8]中去。

谢谢了。
...全文
19 点赞 收藏 3
写回复
3 条回复
com235 2003年04月30日
有点太笨了吧?!不是骂人啊!有间接的形式吗?
回复 点赞
com235 2003年04月28日
?
我试试
回复 点赞
xuv2002 2003年04月28日
char str[8];
str[0]=0x20;
str[1]=0x03;
str[2]=0x04;
str[3]=0x28;
str[4]=0x12;
str[5]=0x34;
str[6]=0x56;
str[7]=0x23;
int num[8];
for(int i=0;i<8;i++){
num[i]=IntToHex(str[i],2).ToInt();
}
int year,month,day,hour,mins,sec,minsec;
year = num[0]*100+num[1];
month = num[2];
day = num[3];
hour = num[4];
mins = num[5];
sec = num[6];
minsec = num[7];
TDateTime ddate,dtime;
ddate = EncodeDate(year,month,day);
dtime = EncodeTime(hour,mins,sec,minsec);
TDateTime dt;
dt.Val = ddate.Val+dtime.Val;
DateTimePicker1->DateTime = dt;

//
TDateTime dt;
unsigned short n[8];
dt.DecodeDate(&n[0],&n[2],&n[3]);
n[1]=n[0]%100;
n[0]=n[0]/100;
dt.DecodeTime(&n[4],&n[5],&n[6],&n[7]);
char s[8];
for(int i=0;i<8;i++){
s[i]=(n[i]/10)*16+n[i]%10;
}


回复 点赞
发动态
发帖子
C++ Builder
创建于2007-08-02

2570

社区成员

10.2w+

社区内容

C++ Builder相关内容讨论区
社区公告
暂无公告