TryStrToFloat

furious programming
TryStrToFloat
Moduł: SysUtils
function TryStrToFloat(const S: string; out Value: Extended): Boolean; overload;
function TryStrToFloat(const S: string; out Value: Extended; const FormatSettings: TFormatSettings): Boolean; overload;

function TryStrToFloat(const S: string; out Value: Double): Boolean; overload;
function TryStrToFloat(const S: string; out Value: Double; const FormatSettings: TFormatSettings): Boolean; overload;

function TryStrToFloat(const S: string; out Value: Single): Boolean; overload;
function TryStrToFloat(const S: string; out Value: Single; const FormatSettings: TFormatSettings): Boolean; overload;

Funkcja sprawdza, czy podany w parametrze S łańcuch znaków można przekonwertować na wartość typu Extended, Double lub Single. Jeżeli konwersja łańcucha powiedzie się, w argumencie Value zwrócona zostanie liczba odpowiadająca wartości z podanego łańcucha, a sama funkcja zwróci w rezultacie wartość True. W przeciwnym razie funkcja zwróci False.

W przeciwieństwie do funkcji StrToFloat, funkcja TryStrToFloat nie wywołuje wyjątku w przypadku niepoprawnie zapisanej liczby w wejściowym ciągu znaków.

Przykład zastosowania funkcji:

program Foo;

{$APPTYPE CONSOLE}

uses
  SysUtils;

var
  S: String;
  D: Double;
begin
  Write('Podaj liczbę zmiennoprzecinkową: ');
  ReadLn(S);

  if TryStrToFloat(S, D) then
    Write('Konwersja liczby powiodła się')
  else
    Write('Podano nieprawidłową wartość!');

  ReadLn;
end.

Rozszerzona wersja funkcji dodatkowo umożliwia podanie w parametrze FormatSettings rekordu typu TFormatSettings.

Zobacz też:

0 komentarzy