DELPHI7对日期格式的处理
WINDOWS系统默认的短日期格式是:yyyy/m/d,在DELPHI中进行字符串互转时,经常会因为格式问题而转换失败,以前都是要求施工人员或客户手动修改系统的短日期格式为:yyyy-mm-dd来解决,近来无事找了一下相关资料,可以解决该问题
在应用程序打开时,可以通过TFormatSettings来设置应用程序的默认日期和时间格式
uses SysUtils, Windows; GetLocaleFormatSettings(GetUserDefaultLCID,FSetting); FSetting.DateSeparator := '-'; FSetting.ShortDateFormat := 'yyyy-mm-dd'; FSetting.ShortTimeFormat := '00:00'; FSetting.LongDateFormat := 'yyyy-mm-dd'; FSetting.LongTimeFormat := '00:00:00'; //日期时间字符串转换为TDateTime sTime := FormatDateTime('yyyy-mm-dd hh:mm:ss',Now); ADOQ.Fields[0].AsDateTime := StrToDateTime(sTime,FSetting);
通过FSetting来对日期时间格式的字符串进行TDateTime转换就不会再出现异常了。
好的代码像粥一样,都是用时间熬出来的