Registriert seit: 25. Feb 2003
Ort: St. Ingbert
211 Beiträge
Delphi 7 Enterprise
|
Problem mit If schleife ...
24. Okt 2003, 11: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!
|
|
Zitat
|