如何格式化日期时间?

时间:2016-11-16 13:32:34

标签: xml date delphi delphi-10-seattle

如何在Delphi WED 16/11/2016 IT 15:26中格式化此日期时间。这是来自XML的值,我只想要16/11/2016 15:26

1 个答案:

答案 0 :(得分:3)

非常简单的解决方案是只需要获取原始字符串所需的部分:

MyDateString := Copy(XMLDateString, 5, 10) + ' ' + Copy(XMLDateString, 19, 5);

或者,您可能希望将原始字符串解析为DateTime值,以便根据区域设置或随时可能需要的任何内容,更好地将该值格式化为所需的字符串。

function XMLDateToMyFormat(XMLDate: string): string;
var DateValue: TDateTime;
begin
  DateValue := EncodeDateTime(Copy(XMLDate, 5, 2).ToInteger, 
                              Copy(XMLDate, 8, 2).ToInteger, 
                              Copy(XMLDate, 11, 4).ToInteger, 
                              Copy(XMLDate, 19, 2).ToInteger, 
                              Copy(XMLDate, 22, 2).ToInteger,
                              0,
                              0);

  Result := FormatDateTime('dd/mm/yyyy hh:nn', DateValue);
end;