Разное
Облака / Clouds
The bast cloud service
Get 20 GB free!!!
Support WebDav.
Show more >>
time-tested cloud storage
Support WebDav.
Последние книги
Самое популярное
Все бесплатно
Все ссылки на файлы, расположенные на страницах сайта, добавлены пользователями и доступны для бесплатного скачивания. За содержание этих файлов администрация сайта ответственности не несет.
Навигация
Вопросы
Сохранить документ Word как RTF на DELPHI
Категория: Файловая система
Категория: Файловая система
Как найти наибольший общий делитель
Категория: Математика
Категория: Математика
Вывод текста на канву Canvas
Категория: Компоненты
Категория: Компоненты
Распознавание кодировки. Перекодировка.
Категория: Текст и строки
Категория: Текст и строки
Что такое хук (hook)?
Категория: Приложение
Категория: Приложение
Что значит Paramstr
Категория: Приложение
Категория: Приложение
Как произвести поиск файлов во вложенных папках
Категория: Файловая система
Категория: Файловая система
Номер строки в memo под курсором
Категория: Текст и строки
Категория: Текст и строки
Создать индекс для таблицы ABS (Absolute Database)
Категория: Базы данных
Категория: Базы данных
Как получить размер текстового файла, не открывая его
Категория: Текст и строки
Категория: Текст и строки
Delphi - Справочник: TFloatFormat
TFloatFormat
|
type TFloatFormat = (ffGeneral, ffExponent, ffFixed, ffNumber, ffCurrency); |
Тип (Unit SysUtils)
|
Форматы, используемые в функциях отображения чисел с плавающей запятой
|
Описание:
|
Тип TFloatFormat используется следующими SysUtils функциями: CurrToStrF - для отображения значений валют FloatToStrF - для отображения чисел с плавающей запятой FloatToText - для форматирования к массиву Возможные значения TFloatFormat: ffGeneral Определяет универсальное числовое форматирование, которое стремится сохранить результирующее значение как можно компактнее. Он удаляет конечные нули и десятичную точку, где возможно. Никакие разделители тысяч не показываются. Формат экспоненты используется, если мантисса является слишком большой для указанного значения Precision команды форматирования. В этом случае, значение Digits (0.. 4) определяет минимальное число показываемых цифр экспоненты. Символ десятичной точки определен переменной DecimalSeparator. ffExponent Обычно называемый как Научный или Инженерный формат, экспонента отображается символом E следующая за числом. Запись E+15 означает 1015. Экспонента всегда имеет знак + или -. Этой экспоненте предшествует число, которое всегда имеет одну цифру перед десятичной точкой. Например: 123.456 форматируется как 1.23456E+2; 0.00123 форматируется как 1.23E-3. Используемый функцией параметр Precision дает число отображаемый цифр перед E, а параметр Digits дает число цифр (0..4) после E. Символ десятичной точки определен переменной DecimalSeparator. ffFixed Этот формат также не использует никаких разделителей тысяч. Он отображает Precision цифр перед десятичной точкой, и Digits цифр после. Если слишком много цифр перед десятичной точкой, то вместо этого используется формат экспоненты. Символ десятичной точки определен переменной DecimalSeparator. ffNumber То же самое, что и ffFixed, за исключением того, что используется разделитель тысяч. Они определены переменной ThousandSeparator. ffCurrency То же самое, что и ffNumber, но с добавлением символа (строки) денежной единицы, который определен переменной CurrencyString. Дополнительно, на форматирование влияют переменные CurrencyFormat и NegCurrFormat. |
Пример кода: Иллюстрация 5 различных типов форматирования
|
var amount : Extended; begin amount := 1234.56; // Отображение используя форматирование ffGeneral ShowMessage('General 4,0 = '+FloatToStrF(amount, ffGeneral, 4, 0)); ShowMessage('General 6,0 = '+FloatToStrF(amount, ffGeneral, 6, 0)); ShowMessage('General 6,2 = '+FloatToStrF(amount, ffGeneral, 6, 2)); ShowMessage('General 3,2 = '+FloatToStrF(amount, ffGeneral, 3, 2)); ShowMessage(''); // Отображение используя форматирование ffExponent ShowMessage('Exponent 4,0 = '+FloatToStrF(amount, ffExponent, 4, 0)); ShowMessage('Exponent 6,0 = '+FloatToStrF(amount, ffExponent, 6, 0)); ShowMessage('Exponent 6,2 = '+FloatToStrF(amount, ffExponent, 6, 2)); ShowMessage('Exponent 3,2 = '+FloatToStrF(amount, ffExponent, 3, 2)); ShowMessage(''); // Отображение используя форматирование ffFixed ShowMessage('Fixed 4,0 = '+FloatToStrF(amount, ffFixed, 4, 0)); ShowMessage('Fixed 6,0 = '+FloatToStrF(amount, ffFixed, 6, 0)); ShowMessage('Fixed 6,2 = '+FloatToStrF(amount, ffFixed, 6, 2)); ShowMessage('Fixed 3,2 = '+FloatToStrF(amount, ffFixed, 3, 2)); ShowMessage(''); // Отображение используя форматирование ffNumber ShowMessage('Number 4,0 = '+FloatToStrF(amount, ffNumber, 4, 0)); ShowMessage('Number 6,0 = '+FloatToStrF(amount, ffNumber, 6, 0)); ShowMessage('Number 6,2 = '+FloatToStrF(amount, ffNumber, 6, 2)); ShowMessage('Number 3,2 = '+FloatToStrF(amount, ffNumber, 3, 2)); ShowMessage(''); // Отображение используя форматирование ffCurrency ShowMessage('Currency 4,0 = '+FloatToStrF(amount, ffCurrency, 4, 0)); ShowMessage('Currency 6,0 = '+FloatToStrF(amount, ffCurrency, 6, 0)); ShowMessage('Currency 6,2 = '+FloatToStrF(amount, ffCurrency, 6, 2)); ShowMessage('Currency 3,2 = '+FloatToStrF(amount, ffCurrency, 3, 2)); end;
Результат:
|
General 4,0 = 1235 General 6,0 = 1234.56 General 6,2 = 1234.56 General 3,2 = 1.23E03 Exponent 4,0 = 1.235E+3 Exponent 6,0 = 1.23456E+3 Exponent 6,2 = 1.23456E+03 Exponent 3,2 = 1.23E+03 Fixed 4,0 = 1235 Fixed 6,0 = 1235 Fixed 6,2 = 1234.56 Fixed 3,2 = 1.23E03 Number 4,0 = 1,235 Number 6,0 = 1,235 Number 6,2 = 1,234.56 Number 3,2 = 1.23E03 Currency 4,0 = ?1,235 Currency 6,0 = ?1,235 Currency 6,2 = ?1,234.56 Currency 3,2 = 1.23E03 |