|
| String to integer??? Fra : news |
Dato : 13-09-02 20:54 |
|
Hej
Jeg forsøger at indlæse et tal fra en string, mit problem er blot, at jeg
ikke på forhånd ved om stringen indeholder tekst eller tal...!
Hvordan tester jeg om indholdet af en given string er en valid integer?
(Hvis jeg benytter 'StrToInt' får jeg en fejlmelding hvis stringen
indeholder tekst.)
Venligst
claus
| |
Peter Vrist (13-09-2002)
| Kommentar Fra : Peter Vrist |
Dato : 13-09-02 22:37 |
|
Brug:
try
x := StrToInt(TalStr);
ShowMessage('Værdien er konverteret...');
except
ShowMessage('Værdien indeholder andet end tal...');
end;
Det skulle virke.
Opstår der en fejl under konverteringen, hoppet der direkte til except
delen, ellers fortsættes der.
Peter Vrist
"news" <1@2.3> skrev i en meddelelse
news:3d82427f$0$27675$edfadb0f@dspool01.news.tele.dk...
> Hej
> Jeg forsøger at indlæse et tal fra en string, mit problem er blot, at jeg
> ikke på forhånd ved om stringen indeholder tekst eller tal...!
>
> Hvordan tester jeg om indholdet af en given string er en valid integer?
> (Hvis jeg benytter 'StrToInt' får jeg en fejlmelding hvis stringen
> indeholder tekst.)
>
> Venligst
>
> claus
>
>
| |
Simon Hiort-Lorenzen (13-09-2002)
| Kommentar Fra : Simon Hiort-Lorenzen |
Dato : 13-09-02 23:43 |
|
"news" <1@2.3> wrote in message
news:3d82427f$0$27675$edfadb0f@dspool01.news.tele.dk...
> Hej
> Jeg forsøger at indlæse et tal fra en string, mit problem er blot, at jeg
> ikke på forhånd ved om stringen indeholder tekst eller tal...!
>
> Hvordan tester jeg om indholdet af en given string er en valid integer?
> (Hvis jeg benytter 'StrToInt' får jeg en fejlmelding hvis stringen
> indeholder tekst.)
Du kan bruge Try .. Except til at fange fejlen med, eller du kan tage et kig
på Val proceduren.
Simon
| |
David A. D. Konrad (15-09-2002)
| Kommentar Fra : David A. D. Konrad |
Dato : 15-09-02 13:31 |
|
"news" <1@2.3> skrev i en meddelelse
news:3d82427f$0$27675$edfadb0f@dspool01.news.tele.dk...
> Hej
> Jeg forsøger at indlæse et tal fra en string, mit problem er blot, at jeg
> ikke på forhånd ved om stringen indeholder tekst eller tal...!
Du burde overveje at bruge en variant.
| |
Lars Bargmann (16-09-2002)
| Kommentar Fra : Lars Bargmann |
Dato : 16-09-02 12:07 |
|
StrToIntDef...
Bargmann
"news" <1@2.3> wrote in message
news:3d82427f$0$27675$edfadb0f@dspool01.news.tele.dk...
> Hej
> Jeg forsøger at indlæse et tal fra en string, mit problem er blot, at jeg
> ikke på forhånd ved om stringen indeholder tekst eller tal...!
>
> Hvordan tester jeg om indholdet af en given string er en valid integer?
> (Hvis jeg benytter 'StrToInt' får jeg en fejlmelding hvis stringen
> indeholder tekst.)
>
> Venligst
>
> claus
>
>
| |
Hans Milling (11-10-2002)
| Kommentar Fra : Hans Milling |
Dato : 11-10-02 21:48 |
|
news wrote:
> Hej
> Jeg forsøger at indlæse et tal fra en string, mit problem er blot, at jeg
> ikke på forhånd ved om stringen indeholder tekst eller tal...!
>
> Hvordan tester jeg om indholdet af en given string er en valid integer?
> (Hvis jeg benytter 'StrToInt' får jeg en fejlmelding hvis stringen
> indeholder tekst.)
>
> Venligst
>
> claus
>
>
Du kan prøve den gode gamle Val funktion, så skal du ikke lege med
exceptions:
procedure TForm1.Button1Click(Sender: TObject);
var
Number : Integer;
strInput : string;
Error : Integer;
begin
InputQuery('Tast...','Skriv et tal', strInput);
Val(strInput,Number,Error);
if Error<>0 then ShowMessage('Du har ikke tastet et heltal')
else ShowMessage('Du har tastet et heltal');
end;
Hans...
| |
|
|