Einzelnen Beitrag anzeigen

Benutzerbild von Gollum
Gollum

Registriert seit: 14. Jan 2003
Ort: Boxberg
456 Beiträge
 
Delphi 10.1 Berlin Professional
 
#3

Re: Hilfe! Fehler wo eigentlich keiner sein sollte!

  Alt 30. Sep 2003, 11:01
Hallo,

Deine Routine kann man auch noch etwas optimieren:

Delphi-Quellcode:
// Annahme, dass Adresse in der Form "127.0.0.1" oder "127..." übergeben wird
type
  TIpArr=array[0..3] of Integer;

procedure TIPCheck.PruefeIP(Sender:TObject);
var i, j:Integer;
    n :TIpArr;
    s :String;
begin
  s:=''; j:=0;
  FillChar(n, SizeOf(TIpArr), -1);
  for i:=1 to Length(text) do
  begin
    if (text[i]<>'.') then
    begin
      if (text[i] in ['0'..'9']) then s:=s+text[i];
    end
    else
    begin
      if (s<>'') then n[j]:=StrToInt(s);
      Inc(j);
      s:='';
    end; // else if
  end; // for i
  // für den Teil nach dem letzten Punkt
  if (s<>'') then n[j]:=StrToInt(s)
    else n[j]:=-1;
  // überprüfen ob alle 4 Bereiche der IP-Adresse gültig sind:
  for i:=0 to 3 if (n[i]=-1) then
  begin
    raise TUngueltigeAdresse.Create('IP-Adresse nicht korrekt!');
    break;
  end; // for i
end; // TIPCheck.PruefeIP
  Mit Zitat antworten Zitat