eg. var tm : string; dt : tdatetime;
tm := '2009-08-21T09:11:21Z'; dt := ?
procedure setISOtoDateTime(strDT:string); var // Delphi settings save vars ShortDF,ShortTF:string; TS, DS :char; // conversion vars dd, tt, ddtt:TDateTime; begin // example datetime test string in ISO format strDT :='2009-07-06T01:53:23Z'; // save Delphi settings DS :=DateSeparator; TS :=TimeSeparator; ShortDF:=ShortDateFormat; ShortTF:=ShortTimeFormat; // set Delphi settings for string to date/time DateSeparator:='-'; ShortDateFormat:='yyyy-mm-dd'; TimeSeparator:=':'; ShortTimeFormat:='hh:mm:ss'; // convert test string to datetime try dd :=StrToDate(Copy(strDT,1,Pos('T',strDT)-1)); tt :=StrToTime(Copy(strDT,Pos('T',strDT)+1,8)); ddtt := trunc(dd)+ frac(tt); except on EConvertErrordo ShowMessage('Error in converting : '+ strDT); end; // restore Delphi settings DateSeparator:= DS; ShortDateFormat:=ShortDF; TimeSeparator:= TS; ShortTimeFormat:=ShortTF; // display test string ShowMessage(FormatDateTime('mm/dd/yyyy hh:mm:ss', ddtt)); end;
http://qc.embarcadero.com/wc/qcmain.aspx?d=9547
|
请发表评论