若系统时间格式为2012/03/05 08:12:12,那么若将("2012-03-05 08:12:12")格式化为时间变量时会报错,在转化之前先将系统时间格式改变再转换就不会报错了,如下
ShortDateFormat="yyyy-MM-dd";
LongTimeFormat="hh:mm:ss";
DateSeparator=‘-’;
TDateTime myDt=StrToDateTime("2012-03-05 08:12:12");
另:取文件时间时:FileTimeToSystemTime是取得系统时间,FileTimeToLocalFileTime取得是当地时间,两者相差8小时,正常应用后者。
参考文章如下:
C++ builder在WIN7下日期时间类型运用相关问题 (2012-12-17 14:24:10)转载▼ 标签: cbuilder win7 短日期格式 设置 it 分类: BCB技术相关
在win7下,将给日期时间赋值或是将字符串转换为日期时间会遇到如下问题: 如: TDateTime myDt=StrToDateTime("2012-03-05 08:12:12"); 系统会提示你该字符串不是有效的日期格式,但我们都知道这在XP系统下确实是标准的日期格式。
win7下标准的格式应该是: TDateTime myDt=StrToDateTime("2012/03/05 08:12:12"); 那么如何统一Win7和XP下的程序呢,这是可以在程序中加入如下语句即可在WIN7下有XP的日期格式: ShortDateFormat="yyyy-MM-dd"; LongTimeFormat="hh:mm:ss"; DateSeparator="-";