From RAD Studio API Documentation
Jump to: navigation, search


function StrToDateTime(const S: string): TDateTime;
function StrToDateTime(const S: string;
const AFormatSettings: TFormatSettings): TDateTime;


extern DELPHI_PACKAGE System::TDateTime __fastcall StrToDateTime(const System::UnicodeString S)/* overload */;


Type Visibility Source Unit Parent
function public
System.SysUtils System.SysUtils


Converts a string to a TDateTime value.

Call StrToDateTime to parse a string that specifies a date and time value. If S does not contain a valid date, StrToDateTime raises an EConvertError exception.

The S parameter must use the current locale's date/time format. In the US, this is commonly MM/DD/YY HH:MM:SS format. Specifying A.M. or P.M. as part of the time is optional, as are the seconds. Use 24-hour time (7:45 PM is entered as 19:45, for example) if A.M. or P.M. is not specified.

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 StrToDateTime is not thread-safe, because it uses localization information contained in global variables. The second form of StrToDateTime, which is thread-safe, refers to localization information contained in the AFormatSettings parameter. Before calling the thread-safe form of StrToDateTime, you must populate AFormatSettings with localization information. To populate AFormatSettings with a set of default locale values, call TFormatSettings.Create.

See Also