- TimeStampToDateTime - C++ Builde
- TTextLineBreakStyle - C++ Builde
- ExtractRelativePath - C++ Builde
- AnsiCompareFileName - C++ Builde
- DateTimeToTimeStamp - C++ Builde
- MilliSecondOfTheDay - C++ Builde
- TThread::ForceQueue - C++ Builde
- TThread::Terminated - C++ Builde
- TComponent::SetName - C++ Builde
- TComponent::Updated - C++ Builde
C++ Builder 参考手册 ➙ System::Sysutils ➙ TimeStampToDateTime
Sysutils::TTimeStamp 类型的时间戳转为日期时间
头文件:#include <System.SysUtils.hpp>
命名空间:System::Sysutils
函数原型:
System::TDateTime __fastcall TimeStampToDateTime(const TTimeStamp &TimeStamp);
参数:
- TimeStamp:时间戳,包含:
• Date:这个时刻在从 0001年01月01日 开始的的第几天;0001/01/01 为第 1 天,0001/01/02 为第 2 天,……
• Time:这个时刻在当天的第几毫秒,00:00:00 为第 0 毫秒,00:00:01 为第 1000 毫秒,……
返回值:
- 日期时间类型的数值;
- Sysutils::TTimeStamp 类型的时间戳主要用于系统内部的时间运算,而不是 UNIX 时间戳;
- 另外一个函数 DateTimeToTimeStamp 是反过来的转换:把日期时间转为 Sysutils::TTimeStamp 类型的时间戳;
- 日期时间转 UNIX 时间戳可以使用 System::Dateutils::DateTimeToUnix;
- UNIX 时间戳转日期时间可以使用 System::Dateutils::UnixToDateTime。
例:这个例子的运行结果请参考函数 DateTimeToTimeStamp 的例子
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Sysutils::TTimeStamp ts;
System::TDateTime dt;
ts.Date = 31;
ts.Time = 1234;
dt = TimeStampToDateTime(ts); // 0001/01/31 00:00:01.234
Memo1->Lines->Add(FormatDateTime(L"yyyy/mm/dd hh:nn:ss.zzz", dt));
ts.Date = 738288;
ts.Time = 47714445;
dt = TimeStampToDateTime(ts); // 2022/05/13 13:15:14.445
Memo1->Lines->Add(FormatDateTime(L"yyyy/mm/dd hh:nn:ss.zzz", dt));
}
运行结果:
运行结果相关:
- System::Sysutils::DateTimeToTimeStamp
- System::Sysutils::TimeStampToDateTime
- System::Sysutils::MSecsToTimeStamp
- System::Sysutils::TimeStampToMSecs
- System::Sysutils::DateTimeToFileDate
- System::Sysutils::FileDateToDateTime
- System::Sysutils::FormatDateTime
- System::Sysutils::FormatSettings
- System::Sysutils::TFormatSettings
- System::Sysutils::TTimeStamp
- System::Sysutils
- System::Dateutils::DateTimeToUnix
- System::Dateutils::UnixToDateTime
- System::Dateutils
- System::TDateTime
- System
C++ Builder 参考手册 ➙ System::Sysutils ➙ TimeStampToDateTime
网友评论