![]() |
Fehler in Schleife...
Hallo,
ich hab folgende Schleife:
Delphi-Quellcode:
"vari1" enthält "{name1}", "vari2" enthält "{name2}", usw.
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; 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] |
Re: Fehler in Schleife...
mmh, was ist noch mal try und except?
Ich wusste das zwar mal aber irgendwie hab ichs nie benutzt. :duck: |
Re: Fehler in Schleife...
Zitat:
Delphi-Quellcode:
heissen und nicht
ausg := StringReplace(ausg, .....
Delphi-Quellcode:
ausg := StringReplace(str, .....
|
Re: Fehler in Schleife...
moin zusammen
dein problem habe ich jetzt auch nicht erkannt, aber meinst du nicht das ein paar if abfragen das ganze irgendwie eindeutiger und übersichtlicher machen? nur so ein tipp! kann dir leider nicht helfen! :( |
Re: Fehler in Schleife...
Tja wo fängt man an:
1. Kein guter Style, auf einen Fehler ein Ergebniss zu setzen. Try except so zu missbrauchen habe ich vorher nicht gesehen. Versuch es mal mit POS 2. Ich kann kaum erkennen was du machen willst, aber eine for-Schleife erscheint mir geeigneter 3. Selbsterklärende Bezeichner wählen, du kommentiertst sie ja schon selbst, warum nennst du die Vari's nicht gleich so :mrgreen: PS: Nicht böse sein, ich meine es nur gut mit dir :angle: |
Re: Fehler in Schleife...
@scp: Das wars!!! Vielen Dank... Sowas sollte man net übersehen... :oops:
@Touchdown: Ich weis nicht, die while-schleife ist da schon ganz passend um immer 4 hintereinanderliegende arryelemente zusammen auszugeben. Was soll ich denn statt try except verwenden? danke für die Tipps... Dieser missbrauchte Stil ist durch das viele Rumprobieren an der Anwendung entstanden. Ich werd mich heute Abend mal dransetzen und eure Tipps umsetzen... gruß billi |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:57 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz