TFormatSettings туда и обратно?

Вопросы программирования и использования среды Lazarus.

Модератор: Модераторы

TFormatSettings туда и обратно?

Сообщение leo_bsv » 19.11.2010 15:09:17

Вообщем есть такой кусок кода:
Код: Выделить всё
var
  LeoFormatSettings : TFormatSettings = (
    CurrencyFormat: 3;
    NegCurrFormat: 8;
    ThousandSeparator: ' ';
    DecimalSeparator: '.';
    CurrencyDecimals: 2;
    DateSeparator: '.';
    TimeSeparator: ':';
    ListSeparator: ',';
    CurrencyString: 'р.';
    ShortDateFormat: 'dd/mm/yyyy';
    LongDateFormat: 'dd" "mmmm" "yyyy';
    TimeAMString: 'AM';
    TimePMString: 'PM';
    ShortTimeFormat: 'hh:nn';
    LongTimeFormat: 'hh:nn:ss';
    ShortMonthNames: ('Янв','Фев','Март','Апр','Май','Июнь',
                      'Июль','Авг','Сент','Окт','Нояб','Дек');
    LongMonthNames: ('Январь','Февраль','Март','Апрель','Май','Июнь',
                     'Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь');
    ShortDayNames: ('Вс','Пн','Вт','Ср','Чт','Пт','Сб');
    LongDayNames:  ('Воскресенье','Понедельник','Вторник','Среда','Четверг',
                    'Пятница','Суббота');
    TwoDigitYearCenturyWindow: 50;
  );

а ещё есть вот такой:
Код: Выделить всё
procedure TForm1.Edit2EditingDone(Sender: TObject);
var d:double;
begin
  d:=StrToFloat(Edit2.Text,LeoFormatSettings); // попытка перевести значение из форматированной строки обратно в double
  d:=d+0.01; // изобразим деятельность
  Edit2.Text:=Format('%m',[d],LeoFormatSettings);
end;

Должно ли работать обратное приведение типа, из строки отформатированной с помощью Format('%m',[d],LeoFormatSettings) или написанной в таком же формате, в double ? Или не должно? Есть ли в природе функция-антипод Format('%m',[d],LeoFormatSettings)? :?
Аватара пользователя
leo_bsv
постоялец
 
Сообщения: 276
Зарегистрирован: 04.08.2010 16:26:10
Откуда: Йошкар-Ола

Re: TFormatSettings туда и обратно?

Сообщение Mr.Smart » 19.11.2010 15:20:51

Есть функция SScanf, но она не поддерживает дополнительный параметр TFormatSettings.
Mr.Smart
долгожитель
 
Сообщения: 1796
Зарегистрирован: 29.03.2008 01:01:11
Откуда: из леса!


Вернуться в Lazarus

Кто сейчас на конференции

Сейчас этот форум просматривают: Yandex [Bot] и гости: 20

Рейтинг@Mail.ru