Delphi-Help

StrToFloat

Печать
Рейтинг пользователей: / 0
ХудшийЛучший 

StrToFloat

Описание

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

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

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

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

Пример кода

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

Примечание

Исключение EConvertError будет вызвано, если есть ошибки в FloatString, таких как конечных пробелов или недопустимых десятичных символов.

 

Авторизация



Счетчики