Keine Ahnung was der User da in die Textdatei hinein schreibt.
Wenn es falsch ist dann kracht's.
gruss
Ich nutze für sowas folgende Funktion:
Delphi-Quellcode:
{ Konvertiert den String in eine Zahl, überliest dabei andere Buchstaben.
So liefert SloppyStrToIntDef('Länge: 15 cm', 0) als Ergebnis die Zahl 15.
Unterbrochene Ziffernfolgen werden allerdings nicht zusammengefügt, so dass
SloppyStrToIntDef('1 2 3 4 5', 0) die Zahl 1 liefert und nicht etwa 12345.
}
function SloppyStrToIntDef(const s: string; default: integer): integer;
var
i: integer;
tmp: string;
flag: (vorZahl, inZahl, nachZahl);
begin
tmp := ''; flag := vorZahl;
for i:=1 to Length(s) do begin
if CharInSet(s[i], ['0'..'9']) then begin
if flag = vorZahl then begin
flag := inZahl;
tmp := tmp + s[i];
end
else if flag = inZahl then
tmp := tmp + s[i]
else
break;
end
else begin
if flag = inZahl then
flag := nachZahl
end
end;
result := StrToIntDef(tmp, default);
end;