Delphi справочник - Форум программистов - Навигация  
 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      По первой букве  
System     SysUtils     StrUtils     DateUtils     FileCtrl     ConvUtils     StdConvs     Math     Classes     Dialogs     Types     Variants    ПО Unit   Compiler directives     Directives     Keywords     Types     Variables     Constants     Functions     Procedures    По категории  
Подписаться на рассылку:
Клуб программистов


Основы Delphi
FloatToStrF
Функция
Преобразует значение с плавающей запятой в строку с форматированием SysUtils unit
  
1 function FloatToStrF ( Value : Extended; Format : TFloatFormat; Precision, Digits : Integer ) : string;

2 function FloatToStrF ( Value : Extended; Format : TFloatFormat; Precision, Digits : Integer; const FormatSettings : TFormatSettings ) : string;
Описание
Функция FloatToStrF конвертирует значение Value с плавающей запятой в визуализуемую строку, с большим управлением по форматированию через значения Format, Precision, и Digits.

Типом Value может быть любой из с типов с плавающей запятой.

Параметр Format определен TFloatFormat (SysUtils) типом:

ffCurrency eg : $2,345.60
ffExponent eg : 2.3456E+04
ffFixed eg : 2345.60
ffGeneral eg : 2345.6
ffNumber eg : 2,345.6

Другие параметры зависят от этого формата. См. TFloatFormat для полных подробностей.

Версия 2 этой функции - для использования в пределах потоков. Вы должны заполнить запись FormatSettings перед вызовом запроса. Она берёт местная копию глобальной переменной, форматирующей переменные, которые делают подпрограмму потоко-безопасной.
Примечания
Вы можете изменить строку валюты используемую по умолчанию (типа '$' в США) используя переменную CurrencyString.

Вы можете изменить позицию строки валюты используя переменную CurrencyFormat.

Вы можете изменить значение десятичной точки, устанавливая символ DecimalSeparator.

Вы можете изменить символ разделителя тысяч, устанавливая символ ThousandSeparator.

Если полное количество цифр перед десятичной точкой (мантисса) не может быть отображено, то отображение возвращается к экспоненте (научный) формат.
Похожие команды
CurrencyDecimals  Определяет число десятичных цифр в функции Format

CurrencyFormat  Определяет размещение строки валюты в функции показа валюты

CurrencyString  Строка валюты, используемая в функциях отображения валюты

DecimalSeparator  Символ используемый для отображения десятичной точки

FloatToStr  Преобразует значение с плавающей запятой в строку

NegCurrFormat  Определяет отображение отрицательного количества форматированной валюты

TFloatFormat  Форматы, используемые в функциях отображения чисел с плавающей запятой

ThousandSeparator  Символ, используемый для отображения разделителя тысяч

 
Пример кода : Показ чисел как финансовые значения
var
  amount1 : Extended;
begin
  amount1 := 1234.567;

  // Отображение в формате Currency
  CurrencyString := 'Ј ';
  ShowMessage('Используя 8,4 = '+FloatToStrF(amount1, ffCurrency, 8, 4));
  ShowMessage('Используя 4,4 = '+FloatToStrF(amount1, ffCurrency, 4, 4));
  ShowMessage('Используя 4,2 = '+FloatToStrF(amount1, ffCurrency, 4, 2));
  ShowMessage('Используя 2,4 = '+FloatToStrF(amount1, ffCurrency, 2, 4));
end;
Используя 8,4 = $ 1,234.5670
Используя 4,4 = $ 1,235.0000
Используя 4,2 = $ 1,235.00
Используя 2,4 = 1.2E0003
 
Пример кода : Показ чисел с научным форматированием
var
  amount1 : Extended;
begin
  amount1 := 1234.567;

  // Показ в Научном формате
  ShowMessage('Используя 8,4 = '+FloatToStrF(amount1, ffExponent, 8, 4));
  ShowMessage('Используя 4,4 = '+FloatToStrF(amount1, ffExponent, 4, 4));
  ShowMessage('Используя 4,2 = '+FloatToStrF(amount1, ffExponent, 4, 2));
  ShowMessage('Используя 2,4 = '+FloatToStrF(amount1, ffExponent, 2, 4));
end;
Используя 8,4 = 1.2345670E+0003
Используя 4,4 = 1.235E+0003
Используя 4,2 = 1.235E+03
Используя 2,4 = 1.2E+0003
 
Пример кода : Общее отображение чисел
var
  amount1 : Extended;
begin
  amount1 := 1234.567;

  // Показ в формате Fixed
  ShowMessage('Fixed форматирование :');
  ShowMessage('');
  ShowMessage('Используя 8,4 = '+FloatToStrF(amount1, ffFixed, 8, 4));
  ShowMessage('Используя 4,4 = '+FloatToStrF(amount1, ffFixed, 4, 4));
  ShowMessage('Используя 4,2 = '+FloatToStrF(amount1, ffFixed, 4, 2));
  ShowMessage('Используя 2,4 = '+FloatToStrF(amount1, ffFixed, 2, 4));

  // Показ в формате General
  ShowMessage('');
  ShowMessage('General форматирование :');
  ShowMessage('');
  ShowMessage('Используя 8,4 = '+FloatToStrF(amount1, ffGeneral, 8, 4));
  ShowMessage('Используя 4,4 = '+FloatToStrF(amount1, ffgeneral, 4, 4));
  ShowMessage('Используя 4,2 = '+FloatToStrF(amount1, ffGeneral, 4, 2));
  ShowMessage('Используя 2,4 = '+FloatToStrF(amount1, ffGeneral, 2, 4));

  // Показ в формате Number
  ShowMessage('');
  ShowMessage('Number форматирование :');
  ShowMessage('');
  ShowMessage('Используя 8,4 = '+FloatToStrF(amount1, ffNumber, 8, 4));
  ShowMessage('Используя 4,4 = '+FloatToStrF(amount1, ffNumber, 4, 4));
  ShowMessage('Используя 4,2 = '+FloatToStrF(amount1, ffNumber, 4, 2));
  ShowMessage('Используя 2,4 = '+FloatToStrF(amount1, ffNumber, 2, 4));
end;

Fixed форматирование:

Используя 8,4 = 1234.5670
Используя 4,4 = 1235.0000
Используя 4,2 = 1235.00
Используя 2,4 = 1.2E0003

General форматирование :

Используя 8,4 = 1234.567
Используя 4,4 = 1235
Используя 4,2 = 1235
Используя 2,4 = 1.2E0003

Number форматирование :

Используя 8,4 = 1,234.5670
Используя 4,4 = 1,235.0000
Используя 4,2 = 1,235.00
Используя 2,4 = 1.2E0003
 



© Блог программистов   |  Создание и продвижение сайтов - "Веб сателлит"  |  Ссылки  |     |  Английская версия