A record for holding locale values for thread-safe functions SysUtils unit
type TFormatSettings = record
  CurrencyFormat : Byte;
  NegCurrFormat : Byte;
  ThousandSeparator : Char;
  DecimalSeparator : Char;
  CurrencyDecimals : Byte;
  DateSeparator : Char;
  TimeSeparator : Char;
  ListSeparator : Char;
  CurrencyString : string;
  ShortDateFormat : string;
  LongDateFormat : string;
  TimeAMString : string;
  TimePMString : string;
  ShortTimeFormat : string;
  LongTimeFormat : string;
  ShortMonthNames : array[1..12] of string;
  LongMonthNames : array[1..12] of string;
  ShortDayNames : array[1..7] of string;
  LongDayNames : array[1..7] of string;
 TwoDigitYearCenturyWindow : Word;
The TFormatSettings record is used to hold Windows locale global variable for use by thread-safe versions of a number of data conversion functions.
It must be furnished before invoking a function that uses it.
Related commands
DateTimeToStrConverts TDateTime date and time values to a string
FormatRich formatting of numbers and text into a string
StrToDateTimeConverts a date+time string into a TDateTime value
 Download this web site as a Windows program.

Example code : Use of the format settings record
  formatSettings : TFormatSettings;

  // Furnish the locale format settings record
  GetLocaleFormatSettings(LOCALE_SYSTEM_DEFAULT, formatSettings);

  // And use it in the thread safe form of CurrToStrF
  ShowMessage('1234.56 formats as = '+
              CurrToStrF(1234.56, ffCurrency, 4, formatSettings));
Show full unit code
  1234.56 formats as ?1,234.5600
Delphi Programming © Neil Moffatt . All rights reserved.  |  Home Page