Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi String suchen und in Datei schreiben (https://www.delphipraxis.net/28850-string-suchen-und-datei-schreiben.html)

DF.A 31. Aug 2004 11:12


String suchen und in Datei schreiben
 
Hallo,
ich untersuche grade eine Datei auf Strings mit bestimmten Bedingungen. Das heißt wenn ein String mit dieser Bedingung vorkommt soll er in eine neue Datei geschrieben werden. Die Datei wird zwar erstellt, allerdings wird nie was in diese Datei geschrieben obwohl ich mir ganz sicher bin, dass der String vorkommen müsste und also auch in die neue Datei geschrieben werden müsste. Ich mache das folgendermaßen.

Delphi-Quellcode:
var
  F: TextFile;          
  D: TextFile;
  s: string;
  sTestString : string;
  poserg : integer;
 
begin
  if not FileExists(sFileName) then begin
    MessageDlg('Die Quelldatei ist nicht vorhanden!', mtError, [mbOk],0);
    EXIT;
  end;

  AssignFile(D, sSaveName); //auf diesen Dateinamen zum Speichern beziehen
  ReWrite(D); //erstellt und öffnet die Datei zum Schreiben

  AssignFile(F,sFileName);
  Reset(F);
 
  while not (EOF(F)) do begin
    ReadLn(F, s);
    sTestString := copy(s,iDetailRangeStart,iDetailRangeLength); //iDetailRangeStart = Startposition, iDetailRangeLength = count
    poserg := pos(sDetailRangeText,sTestString);
    if poserg <> 0 then begin
       writeLn(D, sTestString);
    end;
  end;
  CloseFile(D);
end;
hat jemand ne idee was ich falsch mache oder was ich vergessen habe? wäre schön wenn mir jemand helfen könnte.
mfg DF.A

DF.A 31. Aug 2004 11:37

Re: String suchen und in Datei schreiben
 
vergesst es einfach
hab nen total bekloppten fehler gemacht
:wall: :wall: :wall: :wall: :wall:

Dani 31. Aug 2004 11:40

Re: String suchen und in Datei schreiben
 
Okay :mrgreen:

Denke aber bitte trotzdem daran, dass du die Variable FileMode vor dem Aufruf von Reset(F) noch auf "fmOpenRead or fmShareDenyWrite" setzen solltest.

[oh]Hinweis

Wenn Sie Reset für eine schreibgeschützte Datei aufrufen, müssen Sie zuvor FileMode zurücksetzen. Auch wenn die Datei nur gelesen werden soll, verursacht der Standardwert von FileMode (Schreib-/Lesezugriff), daß das Öffnen einer schreibgeschützten Datei fehlschlägt.[/oh]


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:56 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