SmartPascal
StrToInt
Function
Convert an integer string into an Integer value SysUtils unit
 function StrToInt ( IntegerString : string ) : Integer;
Description
The StrToInt function converts an Integer string, IntegerString such as '123' into an Integer.
 
It supports +ve and -ve numbers, and hexadecimal numbers, as prefixed by $ or 0x.
 
Note that for Delphi 7 and possibly other versions of Delphi, you may omit the 0 before the x for hexadecimal values.
Notes
The EConvertError exception is thrown if there are errors in IntegerString, such as trailing blanks, decimal points, invalid decimal or hexadecimal characters.
Related commands
Integer The basic Integer type
IntToStr Convert an integer into a string
StrToInt64 Convert an integer string into an Int64 value
StrToInt64Def Convert a string into an Int64 value with default
StrToIntDef Convert a string into an Integer value with default
 
Example code : Converting decimal and hexadecimal numbers
var
  A, B, C, D, E, F : Integer;

begin
  A := 32;
  B := StrToInt('100');    // '100' string converted to 100 integer
  C := StrToInt('  -12');  // Leading blanks are ignored
  D := StrToInt('$1E');    // Hexadecimal values start with a '$'
  E := StrToInt('-0x1E');  // ... or with a '0x'
  F := A + B + C + D + E;  // Lets add up all these integers

  ShowMessage('A : '+IntToStr(A));
  ShowMessage('B : '+IntToStr(B));
  ShowMessage('C : '+IntToStr(C));
  ShowMessage('D : '+IntToStr(D));
  ShowMessage('E : '+IntToStr(E));
  ShowMessage('F : '+IntToStr(F));
end;
Show full unit code
   A :  32
   B : 100
   C : -12
   D :  30
   E : -30
   F : 120
 
Example code : Catching string to integer conversion errors
// Full Unit code.
// -----------------------------------------------------------
// You must store this code in a unit called Unit1 with a form
// called Form1 that has an OnCreate event called FormCreate.
 
unit Unit1;
 
interface
 
uses
  SysUtils,   // Unit containing the StrToInt command
  Forms, Dialogs;
 
type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  end;
 
var
  
Form1: TForm1;
 
implementation
{$R *.dfm} // Include form definitions
 
procedure TForm1.FormCreate(Sender: TObject);

var
  A : Integer;

begin
  // We will catch conversion errors
  try
    A := StrToInt('100 ');    // Trailing blanks are not supported
  except
    on Exception : EConvertError do
      ShowMessage(Exception.Message);
  end;

  try
    A := StrToInt('$FG');    // 'G' is an invalid hexadecimal digit
  except
    on Exception : EConvertError do
      ShowMessage(Exception.Message);
  end;
end;
 
end.
Hide full unit code
   '100 ' is not a valid integer value
   '$FG' is not a valid integer value