![]() |
AW: Fehler beim überschreiben von Datei
Zitat:
Zitat:
Ich fülle damit meine Variablen um nachher den start und endpunkt eines Textes über eine Abfrage besser identifizieren zu können.
Delphi-Quellcode:
procedure FSeekTo(nReading: Integer; sBuffer: string);
begin New(FPBuffer); if nReading = 0 then Begin New(FToPBuffer); LineStart := FToPBuffer; end; FPBuffer^.Nr := nReading; FPBuffer^.Str := sBuffer; LineStart^.Max := nReading; FToPBuffer^.Ptr := FPBuffer; FToPBuffer := FPBuffer; end;
Delphi-Quellcode:
usw..
FPBuffer := LineStart;
while (FPBuffer.Nr <= LineStart.Max) do begin Aber wie schon gesagt. Jeder so wie er am besten zurecht kommt. EDIT: So schlecht wie er hier hingestellt wird ist mein Code gar nicht ;) Einfacher wäre natürlich Copy/Paste hier aus dem Forum. gruss |
AW: Fehler beim überschreiben von Datei
Die Procedure FSeekTo müsste eigentlich AppendToLinkedList heissen; denn das ist genau das was passiert: der übergebene Puffer (in Form eines String) wird an die verkettete Liste angehängt. Mit "Seek" oder "FileSeek" hat die Prozedur nix zu tun.
Namensgebung ist beim Programieren einfach sehr wichtig; das darf man nicht auf die leichte Schulter nehmen. |
AW: Fehler beim überschreiben von Datei
Zitat:
Daher auch die Namensgebung PS: Zitat:
gruss |
AW: Fehler beim überschreiben von Datei
Um dich etwas zu stützen - was zählt, ist, dass letzendlich alles klappt.
Genau das ist aber das Ziel und ans Ziel zu gelangen sollte nicht unnötig erschwert werden indem man sich selbst Stolpersteine in den Weg legt (indem man z.B. hardkodierte Zahlen anstatt Konstanten verwendet) Ausschlaggebend wird das ganze dann beim Debuggen oder wiederverwenden der Codesnippets! Letzendlich willst du, dass dein Code funktioniert. Das tut es im Moment aber was ist, wenn du nach einer 3-4 monatigen Pause wieder mal dran arbeiten und ein paar Bugs beheben willst. Dir wird dann $02 nichts sagen! Konstanten hingegen dürften verständlicher und dir somit beim Erreichen deines "Zieles" (funktionierender & wiederverwendbarer Code) behilflicher sein! Es gibt unendlich viele Gründe, warum man Dinge richtig anpacken sollte - damit will ich nicht implizieren, dass deine Methode in irgendiner Form falsch wäre/ist. Aber es gibt bessere Wege! Und warum nicht diese begehen? :stupid: Edit: Dies bezieht sich auf diesen Text Zitat:
|
AW: Fehler beim überschreiben von Datei
Zitat:
"AnhaengenAnVerketteListe", "Speichern" oder "Merken" wäre hier korrekte Begriffe!! Demzufolge ist dein Prozedurname einfach sehr sehr irreführend. "AppendToLinkedList" wäre eine wirklich passende Beschreibung für die Prozedur. |
AW: Fehler beim überschreiben von Datei
Zitat:
@EWeiss: Die Kritik an deinen Code war nicht persönlich gemeint nur eine Konstruktive Kritik. Nehmen wir das Beispiel mit den Konstanten. Wenn du diese hart codest und sie ändern sich mal, bin ich mir zu hundert Prozent sicher, dass du nicht alle Stellen findest, wo du sie benutzt hast. Benutzt du aber eine benannte Konstante, musst du sie nur an einer Stelle im Code ändern. |
AW: Fehler beim überschreiben von Datei
Zitat:
Werd es dann mal berichtigen. Zitat:
Grundsätzlich gebe ich euch ja recht. IOResult der erste Eintrag bei Google ;)
Delphi-Quellcode:
var F: file of Byte;
begin Assign(F, ParamStr(1)); {$I-} Reset(F); {$I+} if IOResult = 0 then Writeln('Dateigröße in Byte ', FileSize(F)) else Writeln('Datei nicht gefunden'); end. gruss |
AW: Fehler beim überschreiben von Datei
Zitat:
Sobald ein Fehler auftrat, werden alle nachfolgenden Pascal-Datei-Routinen übergangen und nicht mehr ausgeführt. Und ist {$i} aktiviert (+), dann lößt der erste Fehler eine Exception aus und die Codebearbeitung wird unterbrochen. Achtung: Das Auslesen von IOResult setzt den internen Fehlercode wieder auf 0. (danach werden also die Dateiroutinen wieder ausgeführt) [add] Jetzt weiß ich auch endlich wieder, wieso ich mal auf die saublöde Idee kam, GetLastError würde seinen Fehlercode zurücksetzen. :wall: |
AW: Fehler beim überschreiben von Datei
Zitat:
|
AW: Fehler beim überschreiben von Datei
Zitat:
Nicht meins um die alten Schalter von Turbo Pascal zu dokumentieren. Wie sie damals angewendet wurde. gruss |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:27 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