Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Dateien suchen + bearbeiten (https://www.delphipraxis.net/29375-dateien-suchen-bearbeiten.html)

sniffy 8. Sep 2004 13:14


Dateien suchen + bearbeiten
 
Hi.

Ich hab ein Programm geschrieben das bestimmte Strings aus einem RichEdit-Feld herausfiltert und in einer ListBox anzeigt. Es sind HTML-Dateien aus denen das Prog die Strings sucht.

Jetzt zu meiner Frage.

Ich will das das Prog ein Verzeichnis (C:\, D:\...) nach HTML-Dateien durchsucht und die HTML-Dateien irgendwie im Hintergrund oder wie auch immer öffnet und nach bestimmten Strings durchsucht und die mir dann in der ListBox anzeigt. Quasi ohne das ich die Datei selber öffnen muss.

Ist das möglich?

Bin noch ein Anfänger.

Phoenix 8. Sep 2004 13:25

Re: Frage ob folgendes funktionieren könnte?
 
Ich habe Deine Frage erst gar nicht gelesen.
Bitte ändere erstmal Deinen Titel zu was aussagekräftigem. Danach schau ich nochmal drüber :zwinker:.

Wuaegner 8. Sep 2004 13:27

Re: Frage ob folgendes funktionieren könnte?
 
Servus sniffy!

Verzeichnisse nach Html-Dateien durchsuchen kannst du mit dieser Prozedur:
Code:
procedure SearchFiles(Ext,StartDir: string;Recursive: Boolean; List: TStrings);
var Rec: TSearchRec;
        i: integer;
        Dir : string;
begin
  Dir := StartDir;
  if AnsiLastChar(Dir) <> '\' then
    Dir := Dir + '\';
  i := FindFirst(StartDir+'*',faAnyFile,Rec);
  while i = 0 do
    begin
      Application.ProcessMessages; //optional
      if Pos(Ext,Rec.Name) > 0 then
        List.Add(Dir+Rec.Name);
      if ((Rec.Attr and faDirectory) > 0) and (Rec.Name <> '.') and
            (Rec.Name <> '..') and Recursive then
        begin
          if AnsiLastChar(Rec.Name) <> '\' then
            Rec.Name := Rec.Name + '\';
          SearchFiles(Ext,StartDir+Rec.Name,Recursive,List);
        end;
      i := FindNext(Rec);
    end;
  FindClose(Rec);
end;
Aufruf:
Code:
procedure TForm1.Button1Click(Sender: TObject);
begin
   begin
  SearchFiles('.html','C:\',true,ListBox1.Items);
end;
Grüße Flo

sniffy 8. Sep 2004 13:40

Re: Frage ob folgendes funktionieren könnte?
 
Danke für deine Bemühungen Wuaegner!

So weit war ich auch schon.

Ich will wenn ich ein Verzeichnis durchsuche das dann wenn eine Datei gefunden wird, sofort die Datei geöffnet wird (irgend was vielleicht mit exklusivem öffnen zu tun?) und dann automatisch nach einem bestimmten String durchsucht wird! :!: Quasi alles in einem Durchgang.

Und zuletzt soll das Prog mir in der ListBox die gefundenen Strings anzeigen.

Luckie 8. Sep 2004 13:41

Re: Frage ob folgendes funktionieren könnte?
 
Würdest du bitte noch dein Topic gemäß den Forenregeln anpassen, wie es dir schon gesagt wurde?

sniffy 8. Sep 2004 14:21

Re: Dateien suchen + bearbeiten
 
erledigt! 8)

sniffy 8. Sep 2004 14:35

Re: Dateien suchen + bearbeiten
 
Mit dem erledigt meinte ich das ich den Namen des Themas gändert hab.


Ich brauch trotzdem unbedingt HILFE!

Luckie 8. Sep 2004 14:37

Re: Dateien suchen + bearbeiten
 
Zitat:

Zitat von sniffy
Ich brauch trotzdem unbedingt HILFE!

Ginge das etwas konkreter? :roll:

Matze 8. Sep 2004 14:41

Re: Dateien suchen + bearbeiten
 
@sniffy: beiträge kann man auch editieren. ;)

Benutze doch mal die Suche in der DP, diese ist wirklich erstklassig:
Eines der Suchergebnisse


Edit: Wenn du die Pfade der html-Dateien alle z.B. in einer Stringlist hast, kannst du sie auch alle in einer extra Stringlist öffnen und durchsuchen (Hier im Forum suchenPosDelphi-Referenz durchsuchenPos, Hier im Forum suchenPosExDelphi-Referenz durchsuchenPosEx).
Also nur mal so als Beispiel, vielleicht nich gerade Resourcenschonend, aber es geht.

sniffy 8. Sep 2004 14:59

Re: Dateien suchen + bearbeiten
 
@Luckie

ok. ich versuchs.

Momentan sieht das Programm so aus:

Ich hab ein Panel für "Datei öffnen", der HTML-Dateien in ein RichEdit öffnet.

Und ich hab noch ein Panel für Strings suchen/anzeigen. Der durchsucht die HTML-Datei nach bestimmten Strings und listet die in einer ListBox auf. In meinem Fall alle Strings die mit cd_ und ld_ anfangen.

Jetzt will ich aber das das Programm z.B. die C:\ Festplatte nach HTML-Dateien durchsucht. Wenn das Prog die Platte durchsucht hat soll das Prog dann direkt (mit den gefundenen HTML-Dateien)mit den durchsuchen der bestimmten Strings fortfahren ohne die Dateien in ein RichEdit oder sonst wo zu öffnen/laden. Das soll dann irgendwie im Hintergrund oder so gemacht werden.

Wenn er dann die Strings gefunden hat soll das Prog dann die gefundenen Strings in eine ListBox anzeigen.

Ich hoffe das ich jetzt etwas deutlcher war.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:39 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz