System.SysUtils.TryStrToDate
Delphi
function TryStrToDate(const S: string; out Value: TDateTime): Boolean;
function TryStrToDate(const S: string; out Value: TDateTime; const AFormatSettings: TFormatSettings): Boolean;
C++
extern DELPHI_PACKAGE bool __fastcall TryStrToDate(const System::UnicodeString S, /* out */ System::TDateTime &Value)/* overload */;
Properties
Type | Visibility | Source | Unit | Parent |
---|---|---|---|---|
function | public | System.SysUtils.pas System.SysUtils.hpp |
System.SysUtils | System.SysUtils |
Description
Converts a string to a TDateTime value, with a Boolean success code.
Call TryStrToDate to parse a string that specifies a date. If S
does not contain a valid date, TryStrToDate returns False.
S
must consist of two or three numbers, separated by the character defined by the DateSeparator global variable or its TFormatSettings equivalent. The order for month, day, and year is determined by the ShortDateFormat global variable or its TFormatSettings equivalent--possible combinations are m/d/y, d/m/y, and y/m/d.
If S
contains only two numbers, it is interpreted as a date (m/d or d/m) in the current year.
Year values from 0 through 99 are converted using TwoDigitYearCenturyWindow. This value is stored either in a global variable (first form) or as a field in the AFormatSettings
parameter (second form). See "Currency and Date-Time Formatting Variables" for more information.
The first form of TryStrToDate is not thread-safe, because it uses localization information contained in global variables. The second form of TryStrToDate, which is thread-safe, refers to localization information contained in the AFormatSettings
parameter. Before calling the thread-safe form of TryStrToDate, you must populate AFormatSettings
with localization information. To populate AFormatSettings
with a set of default locale values, call TFormatSettings.Create.