Einzelnen Beitrag anzeigen

Benutzerbild von rollstuhlfahrer
rollstuhlfahrer

Registriert seit: 1. Aug 2007
Ort: Ludwigshafen am Rhein
1.529 Beiträge
 
Delphi 7 Professional
 
#8

AW: Fehler beim überschreiben von Datei

  Alt 11. Apr 2011, 20:50
wäre es nicht mal sinnvoll, einen größeren Teil des Quellcodes auszupacken? - Zumindest mit dem Teil hier habe ich so meine Probleme:
Zitat von EWeiss:
Delphi-Quellcode:
procedure FBuffin(FileName: string);
var
  sBuffer: string;

begin

  if not FExist(FileName) then Exit;
    nErrCode := FOpen(FileName, 0, 2, myFile);
  if nErrCode <> 0 then exit;
    nReading := 0;

  Assignfile(ParseFile, FileName);
  reset(ParseFile);

  while not eof(ParseFile) do
  begin
    ReadLN(ParseFile, sBuffer);
    FSeekTo(nReading, sBuffer);
    inc(nReading);
  end;

end;
Du öffnest die Datei eimal über dein FOpen und direkt danach ein 2. Mal über AssignFile/Reset (also Pascal-Routinen). Bis zu dem Ende der Routine wird die Daei 0x wieder geschlossen, also müsste sie danach 2x auf sein. Außerdem finde ich es sehr schlecht, Datei-Handles als globale (nicht-lokale) Variablen zu wählen, da falls die Routine noch mal aufgerufen wird, bevor die Datei geschlossen wurde (und zwar 2x) ist die erste Datei noch auf und die 2. Datei überschreibt ALLE Referenzen. Eventuell ein Struktur-Problem?

Bernhard
Bernhard
Iliacos intra muros peccatur et extra!

Geändert von rollstuhlfahrer (11. Apr 2011 um 20:51 Uhr) Grund: Typo
  Mit Zitat antworten Zitat