微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

delphi – FormatDateTime的反函数

我正在寻找一个函数来将由函数 FormatDateTime创建的任何字符串(YYYYMDD,YY / MM / DD,YYMMDD,…)转换为datetime.

我有一个字符串日期格式为YYYYMMDD被格式化的时间

mydatestr:=FormatDateTime('YYYYMMDD',Mydate);

现在我怎么可以再次将mydatestr转换为DateTime?

UPDATE

这些功能

function StrToDate(const S: string): TDateTime; overload;
function StrToDate(const S: string;
  const FormatSettings: TFormatSettings): TDateTime; overload;

function StrToDateTime(const S: string): TDateTime; overload;
function StrToDateTime(const S: string;
  const FormatSettings: TFormatSettings): TDateTime; overload;

不支持传递一个带有转换格式的字符串.

我看起来像这样

Mydatetime:=InvFormatDatetime('20091225','yyyymmdd');

要么

Mydatetime:=InvFormatDatetime('20090108','yyyyddmm');

解决方法

现在的解决方案很简单,来自RX包的rxDateutil.pas单元中的StrToDateFmt函数可以从这里下载: http://sourceforge.net/projects/rxlib/

编辑:

上面提到的函数和来自rxDateutil.pas的StrToDateFmt正在完全按照您期望的方式,使用指定的字符串掩码将字符串转换为datetime,代码太大,无法包含,因为该单元还包含其他日期函数,其中一些需要将字符串转换为日期.

使用示例:

Result := StrToDateFmtDef('MM/DD/YYYY','11/11/2011',Now);

原文地址:https://www.jb51.cc/delphi/102631.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐