Avatar billede hanshanshans Nybegynder
04. december 2005 - 19:11 Der er 5 kommentarer og
1 løsning

Integer-tjek

Hej

Er det muligt at tjekke om en streng er en gyldig integer og kan oversættes med funktionen strToInt uden at prøve at gøre sidstnævnte og så tjekke om der fremkommer en exception?

Mvh Hans
Avatar billede hmann Nybegynder
04. december 2005 - 19:29 #1
StrToIntDef...

hvis strengen ikke kan konverteres til en integer bliver den sat til default værdien istedet..

læs mere i hjælpefilen
Avatar billede kroning Nybegynder
04. december 2005 - 19:46 #2
Du kunne lave en function til det f.eks.

function IsValidInt(Int : string) : boolean;
begin
  try
    StrToInt(Int);
    result:=true;
  except
    result:=false;
  end;
end;

---------
  if IsValidInt('123d') then
    showmessage('ja det er');
Avatar billede kroning Nybegynder
04. december 2005 - 19:50 #3
eller hvis du helt vil undgå try except:

function IsValidInt(Int : string) : boolean;
var
  E, R: Integer;
begin
  Val(Int,R,E);
  result:=E=0;
end;

---------
  if IsValidInt('123') then
    showmessage('ja det er');
Avatar billede kroning Nybegynder
04. december 2005 - 19:53 #4
eller du kunne benytte funktionen TryStrToInt

var
  V : integer;
begin
  if TryStrToInt('123',V) then
    showmessage('ja det er');
end;
Avatar billede hanshanshans Nybegynder
05. december 2005 - 20:35 #5
hmann >> det er jo desværre ikke til at se om strengen er en gyldig integer, eller om det er default, som er returneret


kroning >> smid et svar
Avatar billede kroning Nybegynder
05. december 2005 - 20:43 #6
k
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester