0

SysUtils.StrToDate('20/11/2012 7:05:14 PM')抛出异常。我如何TDateTime从那个字符串中得到一个?

4

2 回答 2

5

为避免此类问题,您必须使用StrToDateTime传递TFormatSettings值的方法以及要转换的字符串格式的设置。

var
  AFormatSettings: TFormatSettings;
  LDateTime : TDateTime;
begin
   AFormatSettings:=TFormatSettings.Create;
   AFormatSettings.ShortDateFormat:='dd/mm/yyyy';
   AFormatSettings.DateSeparator:='/';
   LDateTime:=  StrToDateTime('20/11/2012 7:05:14 PM', AFormatSettings);
于 2012-11-20T04:09:52.177 回答
3

如果您尝试同时解析日期和时间,则可能应该改用该SysUtils.StrToDateTime方法。

否则,如果您从字符串中删除时间,它应该可以工作并只给您日期。

于 2012-11-20T03:56:37.453 回答