Einzelnen Beitrag anzeigen

Benutzerbild von eddy
eddy

Registriert seit: 3. Jan 2003
Ort: Sachsen
573 Beiträge
 
Delphi 5 Professional
 
#6
  Alt 13. Mär 2003, 17:51
Hallo Hellcat,

das ist keine dumme Frage, das ist Kauderwelsch. Readln liefert, soweit ich weiß, keine Zeilen-Nummer sondern einen String. Würde ich in einer Textdatei nach einem bestimmten String suchen, sähe das bei mir so aus oder so ähnlich:

Code:
procedure TFInfoFinder.sbTestClick(Sender: TObject);
const
  fn = 'C:\tmp\InfoFinder1.PAS';
  srch = 'begin';
var
  f : TextFile;
  cnt : integer;
  s : string;
begin
  {$I-}
  AssignFile(f, fn);
  Reset(f);
  if IOResult <> 0 then begin
    MessageDlg('War wohl nicht''s', mtConfirmation, [mbOK],0);
    exit;
  end;

  cnt := 0;
  while not Eof(f) do begin
    Readln(f, s);
    s := AnsiLowerCase(s);
    if Pos(srch, s) > 0 then inc(cnt);
  end;

  MessageDlg('In ' + AnsiUpperCase(fn) + ' wurde die Zeichenkette: ' + #13
             + '"' + srch + '" ' + IntToStr(cnt) + ' Mal gefunden',
             mtInformation, [mbOK], 0);
  CloseFile(f);
  {$I+}
end;
Ich setze dabei voraus, daß begin nur einmal pro Zeile verwendet wird.

mfg
eddy