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

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

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

StrToFloat
Функция
Преобразует числовую строку в значение с плавающей запятой SysUtils unit
  
1 function StrToFloat ( FloatString : string ) : Extended;

2 function StrToFloat ( FloatString : string; const FormatSettings : TFormatSettings ) : Extended;

Delphi Sources

Описание
Функция StrToFloat конвертирует числовую строку FloatString, например '123.456' в значение с плавающей точкой с типом Extended.
Она поддерживает целый формат, формат с плавающей точкой и научный (экспоненциальный) формат.

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

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

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

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

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

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

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

  // Его преобразование в число с плавающей запятой
  floatValue  := StrToFloat(stringValue);

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

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

  try
    A := StrToFloat('$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
 


Последние добавленные на сайт исходники

Animation Loaders

DeLiKaTeS Tetris (Тетрис)

TDictionary Custom Sort

Fast Watermark Sources

3D Designer

Sik Screen Capture

 

Patch Maker

Айболит (remote control)

ListBox Drag & Drop

Доска для игры Реверси

Графические эффекты

Рисование по маске

 

Copyright © 2004-2026 "Delphi Sources" by «SiteAnalyzer» (источник – "DelphiBasics")

Группа ВКонтакте