delphi 时间函数

一、不同的电脑时间格式有可能不同,会导致转换时间格式数据时意外报错。

二、需要写几个小函数来统计软件运行过程中的时间格式。

1、数据库日期时间格式函数

function format_sql_datetime(temp_datetime: string; date_interval: string = '/'; time_interval: string = ':'): string;
var
  yyyy: string;
  mm: string;
  dd: string;
  hh: string;
  minute: string;
  ss: string;
  temp_result: string;
begin
  yyyy := Copy(temp_datetime, 1, 4);
  mm := Copy(temp_datetime, 6, 2);
  dd := Copy(temp_datetime, 9, 2);
  hh := Copy(temp_datetime, 12, 2);
  minute := Copy(temp_datetime, 15, 2);
  ss := Copy(temp_datetime, 18, 2);
  temp_result := yyyy + date_interval + mm + date_interval + dd + ' ' + hh + time_interval + minute + time_interval + ss;
  result := temp_result;
end;

2、软件内使用时间部分格式

function format_sys_time(temp_time: string): string;
var
  SysFrset: TFormatSettings;
  temp_result:string;
  hh: string;
  minute: string;
  ss: string;
  sys_time_interval:string;
begin
  GetLocaleFormatSettings(GetUserDefaultLCID, SysFrset);
  sys_time_interval:=SysFrset.TimeSeparator;
  hh := Copy(temp_time, 1, 2);
  minute := Copy(temp_time, 4, 2);
  ss := Copy(temp_time, 7, 2);
  temp_result:= hh+sys_time_interval+minute+sys_time_interval+ss;
  result:=temp_result;
end;

3、软件内使用日期部分格式

略,参考时间部分格式修改吧,用SysFrset.DateSeparator获取时间间隔符号

三、在软件运行过程中,各客户使用端由于获取时间的方式不同,会导致查询的结果不同,尽量采用统计获取函数获取时间,尽量采用INTERNET 时间或者服务器时间,如果想减少获取的次数,可以在软件启动时获取一次,然后采用软件内时钟函数获取。

你可能感兴趣的:(delphi,windows,DELPHI,个人小心得,delphi,项目)