关于进制转换问题(50分)

  • 主题发起人 主题发起人 xzhxu2006
  • 开始时间 开始时间
X

xzhxu2006

Unregistered / Unconfirmed
GUEST, unregistred user!
我欲将计算机的当前时间转换成十六进制,小时、分钟、秒分下来转换,并且转换下来十六进制要是两位的,该如何实现?

我用IntToHex将十进制转换十六进制,结果出来是十六位,我又该如何将前面的'0000...'去掉呢

请高手指点!
 
IntToHex(數值,2)
 
我的数字要是大点的话,2位就不能满足了,把后面的位数去掉还可以啊?

如何取当前计算机的时间,小时,分钟,秒呢?
 
Format('%2.2x',[StrToint(FormatDatetime('yyyymmddhhmmss'),Now)]);
里面想要什么,楼主 自己选择就行了。
'yyyymmddhhmmss'--------- 年月日小时分秒
 
》》我的数字要是大点的话,2位就不能满足了

那你不是需要考虑 转换位32进制, 或者更大了???
 
IntToHex(年,2) + IntToHex(月,2) + IntToHex(日,2) + IntToHex(小时,2) + IntToHex(分,2) + IntToHex(秒,2) + IntToHex(毫秒,2)
 
年,月,日...
是要先分开提取的吧?
 
var
myDate: TDateTime ;
SystemTime:TSystemTime;
begin
GetLocalTime(SystemTime);
myDate:=SystemTimeToDateTime(SystemTime);

TsystemTime的定义如下:其中有年月日分秒等
PSystemTime = ^TSystemTime;
_SYSTEMTIME = record
wYear: Word;
wMonth: Word;
wDayOfWeek: Word;
wDay: Word;
wHour: Word;
wMinute: Word;
wSecond: Word;
wMilliseconds: Word;
end;
{$EXTERNALSYM _SYSTEMTIME}
TSystemTime = _SYSTEMTIME;
SYSTEMTIME = _SYSTEMTIME;
{$EXTERNALSYM SYSTEMTIME}
 
Format('%2.2x',[StrToint(FormatDatetime('yyyymmddhhmmss'),Now)]);
应该没问题,楼主试试吧
 
sql server 用datepart
delphi 用strtoint(formatdatetime('yyyy'),DateValue)),strtoint(formatdatetime('mm'),DateValue)),strtoint(formatdatetime('dd'),DateValue)),strtoint(formatdatetime('yyyy'),DateValue)),strtoint(formatdatetime('hh'),DateValue)),
strtoint(formatdatetime('nn'),DateValue)),strtoint(formatdatetime('ss'),DateValue)))),strtoint(formatdatetime('ms'),DateValue))
 
FormatDatetime('mm'),Now)
得到了当天的日期,我如何才能得到当时的分钟呢?
 
使用 TTime控件,一秒觖发一次,写代码在里面
 
老大,上面都说的很清除了啊:formatdatetime('nn',now)
 
多人接受答案了。
 
后退
顶部