函数原型:
TDateTime __fastcall StrToDateDef(const UnicodeString S, const TDateTime Default);
TDateTime __fastcall StrToDateDef(const UnicodeString S, const TDateTime Default, const TFormatSettings &AFormatSettings);
头文件:
#include <System.SysUtils.hpp> (XE2 之后) #include <SysUtils.hpp> (XE 之前)
参数:
S: 字符串,需要符合参数 AFormatSettings 或全局对象 FormatSettings 指定的格式。
Default: TDateTime 类型的日期时间,如果把 S 转为日期失败,函数将返回这个日期作为转换结果。
AFormatSettings: TFormatSettings 类型的格式信息。
返回值:
返回值为 TDateTime 类型的日期时间。
如果没有 AFormatSettings 参数,按照全局对象 FormatSettings 指定的格式,
如果有 AFormatSettings 参数,按照这个参数指定的格式,把字符串转为日期。
如果参数 S 与指定的格式不符,会返回参数 Default 的值,不会抛出异常,
如果年只有两位数,采用 TwoDigitYearCenturyWindow 指定的年的范围。
例1:使用默认格式
默认格式,即全局对象 FormatSettings 指定的格式
TDateTime dt = StrToDateDef(L"2017/06/30", 0); |
运行结果:
例2:使用参数给定格式
运行结果:
|