Справочник функций и процедур Delphi: StrToCurr

  Навигация по первой букве:

A  B  C  D  E  F  G  H  I  J  K  L  M  N  O  P  Q  R  S  T  U  V  W  X  Y  Z

  Навигация по категории:

Compiler directives, Directives, Keywords / Types, Variables, Constants / Functions, Procedures

  Реклама:

 

StrToCurr
Функция
Преобразует числовую строку в денежное выражение SysUtils unit
  
1 function StrToCurr ( CurrencyString : string ) : Currency;

2 function StrToCurr ( CurrencyString : string; const FormatSettings : TFormatSettings ) : Currency;

Google  
 
Описание
Функция StrToCurr конвертирует числовую строку CurrString, например '123.456' в значение с типом Currency (валюта).

Она поддерживает целый формат, формат с плавающей точкой и научный (экспоненциальный) формат.

Если в CurrString встретился символ, отделяющий целое от дроби, то он должен соответствовать текущему значению переменной DecimalSeparator.

Второй вариант этой функции предназначен для использования в потоках. Перед вызовом функции вы должны заполнить запись FormatSettings. Функция делает локальную копию глобальных переменных форматирования, что делает ее потокобезопасной.
Примечания
Исключение EConvertError выбрасывается, если есть ошибки в CurrString, типа конечных пробелов или недопустимых десятичных символов.
Похожие команды
Currency  Тип с плавающей запятой с 4 десятичными числами, используемыми для финансовых значений

CurrToStr  Преобразует денежную величину в строку

CurrToStrF  Преобразует денежную величину в строку с форматированием

Format  Богатое форматирование чисел и текста в строке

TFormatSettings  Запись для содержания региональных значений для thread-safe функций

 
Пример кода : Преобразование научного формата числовой строки
var
  stringValue : string;
  currValue   : Currency;

begin
  // Установка исходной строки, содержащую представление числа
  stringValue := '123.456E+002';

  // Её преобразование в вещественное число
  currValue  := StrToCurr(stringValue);

  // И показ значения
  ShowMessage(stringValue+' = '+CurrToStr(currValue));
end;
123.456E+002 = 12345.6
 
Пример кода : Захват ошибок строковых преобразований
var
  A : Currency;

begin
  // Мы захватим конверсионные ошибки
  try
    A := StrToCurr('10 E 2');    // Средние пробелы не поддерживаются
  except
    on Exception : EConvertError do
      ShowMessage(Exception.Message);
  end;

  try
    A := StrToCurr('$FF');    // Шестнадцатеричные значения не поддерживаются
  except
    on Exception : EConvertError do
      ShowMessage(Exception.Message);
  end;
end;
'10 E 2' is not a valid floating point value
'$FF' is not a valid floating point value
 


Copyright © 2004-2016 Delphi Sources (источник – "DelphiBasics.ru")
 


Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook