在我的代码中,我面临一个问题.示例代码:
var d1: tdatetime begin d1 := strtodatetime('23/02/2011 12:34:56'); end;
但它给出错误:
’23/02/2011 12:34:56′ is not valid
date and time
我在做什么有什么问题?
解决方法
StrToDateTime功能使用
ShortDateFormat
和
DateSeparator
将日期部分,LongTimeFormat
和
TimeSeparator
转换为时间部分.所以你的字符串必须与这些变量匹配才能将字符串转换为TDateTime.相反,您可以使用带有
TFormatSettings
参数的StrToDateTime来解析字符串.
function StrToDateTime(const S: string; const FormatSettings: TFormatSettings): TDateTime;
检查这个样本
Var StrDate : string; Fmt : TFormatSettings; dt : TDateTime; begin fmt.ShortDateFormat:='dd/mm/yyyy'; fmt.DateSeparator :='/'; fmt.LongTimeFormat :='hh:nn:ss'; fmt.TimeSeparator :=':'; StrDate:='23/02/2011 12:34:56'; dt:=StrToDateTime(StrDate,Fmt);