TDateTime::FormatString 和 SysUtils::FormatDateTime 之间的关系

Relation between TDateTime::FormatString and SysUtils::FormatDateTime

当使用 TDateTime 方法 FormatString 获得毫秒精度的字符串表示时,我在使用 zzz 格式说明符时得到了完美的结果。但它没有记录 TDateTime::FormatString Method, whereas it is for the SysUtils.FormatDateTime Function.

我试图在源代码中查找适当 TDateTime 方法的实现,因为与 outdated/out-of-sync 文档相比,重复实现的可能性要小得多。

到目前为止我什么也没找到。这两者之间真的没有关系吗?

[zzz] is not documented for the TDateTime::FormatString Method, whereas it is for the SysUtils.FormatDateTime Function.

您正在旧的 Embarcadero 文档网站上查看旧文档。最新的 TDateTime::FormatString() 文档可在 Embarcadero 较新的 DocWiki 网站上找到:

http://docwiki.embarcadero.com/Libraries/en/System.TDateTime.FormatString

XE5 中的文档中添加了 zzz 说明符:

zzz Displays the milliseconds (000-999).

I tried to look up the implementation of the appropriate TDateTime method in the sources, since a duplicate implementation was much less likely than an outdated/out-of-sync documentation.

I found nothing so far. Is there indeed no relation between these both?

TDateTime 的 C++ 实现源代码在 $(BDS)\source\vcl\datetime.cpp 文件中。 TDateTime::FormatString() 直接调用 SysUtils.FormatDateTime():

System::String __fastcall TDateTime::FormatString(const System::String& format) const
{
  return Sysutils::FormatDateTime(format, *this);
}