200分求:如何根据获取的时间字符串设定本地时间?要考虑本地时间的格式 ( 积分: 200 )

  • 主题发起人 主题发起人 loverofangel
  • 开始时间 开始时间
L

loverofangel

Unregistered / Unconfirmed
GUEST, unregistred user!
我从中心服务器上获取时间,以一个字符串的形式返回来,比如20050708094950,表示2005年07月08日09点49分50秒,我根据这个时间来设置本机时间。请问我如何把这个字符串转化成系统时间的格式?设置系统时间用什么方法?一定要用SetLocalTime(SystemTime)这个方法吗?如果本机的时间格式与中心不同,采用07/08/2005 星期五等其他格式,那转化时会不会出错?
 
我从中心服务器上获取时间,以一个字符串的形式返回来,比如20050708094950,表示2005年07月08日09点49分50秒,我根据这个时间来设置本机时间。请问我如何把这个字符串转化成系统时间的格式?设置系统时间用什么方法?一定要用SetLocalTime(SystemTime)这个方法吗?如果本机的时间格式与中心不同,采用07/08/2005 星期五等其他格式,那转化时会不会出错?
 
procedure TForm1.Button1Click(Sender: TObject);
var MyST:TSystemTime;
begin
MyST.wYear:=2000;
MyST.wMonth:=4;
MySt.wDay:=1;
MySt.wHour:=17;
MySt.wMinute:=20;
MySt.wSecond:=20;
if SetSystemTime(MyST) then ShowMessage('Change successfully')
else ShowMessage('Change failed');
end;
注意,实际的时间会加8小时,(因为是东8区)
 
var t: _SYSTEMTIME;
begin
t.wYear := 2005;
t.wMonth := 7;
t.wDay := 8;
t.wHour := 10;
t.wMinute := 21;
t.wSecond := 0;
t.wMilliseconds := 0;
SetLocalTime(t);
end;
還是用SetLocalTime好,用GetSystemTime會改變日期時間格式。
 
嗯,多谢,我自己也查到了,可以将字符串转化成整数,然后利用SetLocalTime设置系统时间,与本机的时间格式应该是没有关系的,我试验了,可以的
 
后退
顶部