Registriert seit: 11. Sep 2003
Ort: Darmstadt
127 Beiträge
Delphi 5 Standard
|
Fehler in Schleife...
27. Jan 2004, 21:25
Hallo,
ich hab folgende Schleife:
Delphi-Quellcode:
j := 0;
while j <= high(Dateinamen) do
begin
// Schreiben
try
test := Dateinamen[j];
ausg := StringReplace(str, vari1, Dateinamen[j], [rfReplaceAll, rfIgnoreCase]);
except
ausg := StringReplace(str, vari1, 'f1', [rfReplaceAll, rfIgnoreCase]);
end;
try
test := Dateinamen[j+1];
ausg := StringReplace(ausg, vari2, Dateinamen[j+1], [rfReplaceAll, rfIgnoreCase]);
except
ausg := StringReplace(str, vari2, 'f2', [rfReplaceAll, rfIgnoreCase]);
end;
try
test := Dateinamen[j+2];
ausg := StringReplace(ausg, vari3, Dateinamen[j+2], [rfReplaceAll, rfIgnoreCase]);
except
ausg := StringReplace(str, vari3, 'f3', [rfReplaceAll, rfIgnoreCase]);
end;
try
test := Dateinamen[j+3];
ausg := StringReplace(ausg, vari4, Dateinamen[j+3], [rfReplaceAll, rfIgnoreCase]);
except
ausg := StringReplace(str, vari4, 'f4', [rfReplaceAll, rfIgnoreCase]);
end;
Write(datei, ausg);
j := j+4;
end;
"vari1" enthält "{name1}", "vari2" enthält "{name2}", usw.
Wenn die Anzahl der Einträge in dem Array "Dateinamen" keine Vielfache von "4" ist, sieht die AUsgegebene Zeile so aus: {name1}{name2}{name3}f4
{name1} und {name2} hätten aber durch die letzten beiden Arrayelemnete ersetzt werden müssen und {name3} durch "f3".
Was hab ich da falsch gemacht?
gruß
billi
[edit=FuckRacism]Delphi-Syntax hinzugefügt, nimm bein nächsten Mal doch anstatt der Code-Syntax einfach die Delphi-Syntax. Mfg, FuckRacism[/edit]
|