Einzelnen Beitrag anzeigen

sharkx

Registriert seit: 24. Feb 2003
Ort: St. Ingbert
211 Beiträge
 
Delphi 7 Enterprise
 
#1

Problem mit If schleife ...

  Alt 24. Okt 2003, 10:55
Hallo, im folgenden Source lese ich eine Textdatei aus, bestimmte Strings möchte ich ( Wenn sie nicht schon in der ListView stehen ) in ein listView adden. Jedoch scheitere ich, warum auch immer *gg , an der abfrage ob dieser String schon geaddet wurde.


Delphi-Quellcode:
// logfile auf "[Time] [Tag] und String" durchsuchen
function ReadString(path : string) : string;
const
  searchstring = '[blaaaa] + bluuuub bluuuub:';
var
  gefunden : boolean;
  list, newlist : TStrings;
  z1,datum,release : string;
  i,a,p1,p2 : integer;
begin
  list := TStringList.Create;
  newlist := TStringList.Create;
  list.LoadFromFile(path);

// Release parsen
  for i := 0 to list.Count-1 do
  begin
    p1 := Pos(searchstring,list[i]);
    if p1 = 0 then continue;

    z1 := list.Strings[i];
    p1 := Pos('[',z1); // first Time String auslesen
    p2 := Pos(']',z1); // last Time String auslesen

    datum := Copy(z1,p1+1,(p2-p1)-1);

    p1 := Pos(searchstring,z1);
    z1 := Copy(z1,p1+length(searchstring)+1,length(z1));

    p2 := Pos(' ',z1);

    release := Copy(z1,1,p2-1);

// Release schon geaddet?
    begin
      for a := 0 to list.Count-1 do
      if newlist.Count <> 0 then
      begin
        if newlist.Strings[a] = (datum+' '+release) then
        begin
          gefunden := true;
          break;
        end;
        gefunden := false;
      end;
      if not gefunden then
        newlist.Add(datum+' '+release)
    end;
  result := newlist.CommaText;
  list.free;
  newlist.free;
  end;
end;


thnx für eure hilfe

[edit=sakura] Code durch [Delphi]-Tags ersetzt. Mfg, sakura[/edit]
Programming today is a race between Software Engineers striving to build bigger and better idiot-proof Programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning!
  Mit Zitat antworten Zitat