AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Mehrere Dateien in Memo laden?

Ein Thema von coolio · begonnen am 15. Mär 2009 · letzter Beitrag vom 16. Mär 2009
Antwort Antwort
Seite 1 von 2  1 2   
coolio

Registriert seit: 20. Jan 2009
Ort: Münster
22 Beiträge
 
Delphi 2009 Enterprise
 
#1

Mehrere Dateien in Memo laden?

  Alt 15. Mär 2009, 15:41
Hallo

Habe mal wieder ein Problem. Und zwar möchte ich mehrere Dateien nacheinander in ein Memo laden. Dann soll die Datei, die gerade geladen ist, nach einem bestimmten String durchsucht werden. Anschließend soll wieder die nächste Datei ins Memo geladen werden. Am besten wäre es, wenn ich ein Verzeichnis, in dem sich alle Dateien befinden, einfach auswählen könnte. Nur ich habe keine Ahnung wie ich das machen könnte. Bekomme es nur hin, eine einzelne Datei zu laden. Ich hoffe, dass ihr halbwegs verstanden habt, was mein Problem ist. Bin über jeden Rat dankbar.

MFG
Linus K.
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#2

Re: Mehrere Dateien in Memo laden?

  Alt 15. Mär 2009, 15:46
Hallo

Lade die Datei zuerst in eine StringListe und füge dann deren Text ins Memo so ein

Memo1.Lines.Append(StringListe.Text);
Thomas
  Mit Zitat antworten Zitat
coolio

Registriert seit: 20. Jan 2009
Ort: Münster
22 Beiträge
 
Delphi 2009 Enterprise
 
#3

Re: Mehrere Dateien in Memo laden?

  Alt 15. Mär 2009, 15:53
Danke für deine Antwort. Nur könntest du das vielleicht etwas genauer erklären? Sry bin noch ein ziemlicher Anfänger.
Was ist überhaupt eine Stringliste? Und wieso hilft sie mir bei meinem Problem, mehrere Dateien zu laden?
Linus K.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.330 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Mehrere Dateien in Memo laden?

  Alt 15. Mär 2009, 15:55
Aber vor allem suche vorher in der StringList statt im Memo.

Nebenbei wäre es wohl sinnvoller nur die Zeilen mit den Fundstellen anzuzeigen oder zumindest nur ein paar Zeilen mit dem Fund. Sonst nutzt das ja rein gar nix, wenn die Datei 10.000 Zeilen hat und da irgendwo etwas gefunden wurde. Dann muss man da ja auch erst noch suchen.

Ich selbst habe ein Fundfenster mit der Liste der Funde und der entsprechenden Zeile und bei einem Doppelklick kam man dann an die Stelle des Fundes. Ich glaube ich sollte den Editor doch nochmal überarbeiten und erneut veröffentlichen. Zu Demonstrationszwecken.

Zitat von coolio:
Danke für deine Antwort. Nur könntest du das vielleicht etwas genauer erklären? Sry bin noch ein ziemlicher Anfänger.
Was ist überhaupt eine Stringliste? Und wieso hilft sie mir bei meinem Problem, mehrere Dateien zu laden?
Eine TStringList ist so ähnlich wie Lines beim Memo. Nur ohne Memo.
Delphi-Quellcode:
var
  xy: TStringList;
begin
  xy := TStringList.Create;
  xy.LoadFromFile(Pfad + Dateiname...);

  // jetzt hast du die Zeilen in xy wie vorher in Memo.Lines

  //Am Ende aufräumen
  xy.Free;
end;
Mehr dazu siehe Hilfe und ausprobieren.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
coolio

Registriert seit: 20. Jan 2009
Ort: Münster
22 Beiträge
 
Delphi 2009 Enterprise
 
#5

Re: Mehrere Dateien in Memo laden?

  Alt 15. Mär 2009, 16:08
OkOk, die Stringliste war schonmal hilfreich. Aber mein eigentliches Problem ist ja, dass ich ein ganzes Verzeichnis mit Dateien, öfnnen will. Sie sollen nacheinander geladen und geprüft werden, ohne dass man jede Datei einzeln auswählen muss. Weiß da niemand was?
Linus K.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.330 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: Mehrere Dateien in Memo laden?

  Alt 15. Mär 2009, 16:24
Dann zeige einen Verzeichnisauswahldialog an und suche alle Dateien im ausgewählten Verzeichnis.
zu 1.: http://www.delphi-forum.de/viewtopic.php?p=160885
zu 2.: http://www.delphipraxis.net/internal...ect.php?t=2464
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
coolio

Registriert seit: 20. Jan 2009
Ort: Münster
22 Beiträge
 
Delphi 2009 Enterprise
 
#7

Re: Mehrere Dateien in Memo laden?

  Alt 16. Mär 2009, 16:12
Habe mich nun doch entschieden, es anders zu machen. Ich möchte mit OpenDialog einfach mehrere Textdateien auswählen und diese dann in ein Memo laden.
Doch wenn ich nun mehrere Dateien ausgewählt habe, werden im Memo nicht alle Textdateien angezeigt, sondern es wird nur die Datei angezeigt, die ich als erstes angeklickt habe. Habe schon viel rumprobiert und bin jetzt bei folgendem Code gelandet:

Delphi-Quellcode:
if OpenDialog1.Execute then
 begin
   for i := 0 to OpenDialog1.Files.Count - 1 do
   begin
   Memo2.Lines.LoadFromFile(OpenDialog1.Files[i])
   end;
end;
Wieso wird immer nur eine Datei angezeigt?
Linus K.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.330 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Mehrere Dateien in Memo laden?

  Alt 16. Mär 2009, 16:14
LoadFromFile lädt nun einmal den Dateiinhalt in das Memo, der alte Inhalt wird dabei überschrieben. Und damit bist du wieder bei einer TStringList zum Laden zuerst.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.536 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: Mehrere Dateien in Memo laden?

  Alt 16. Mär 2009, 16:17
Also ungefähr so:
Delphi-Quellcode:
if OpenDialog1.Execute then
begin
  Liste := TStringlist.Create;
  try
    for i := 0 to OpenDialog1.Files.Count - 1 do
    begin
      Liste.LoadFromFile(OpenDialog1.Files[i]);
      Memo2.Lines.AddStrings(Liste);
    end;
  finally
    Liste.Free;
  end;
end;
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
coolio

Registriert seit: 20. Jan 2009
Ort: Münster
22 Beiträge
 
Delphi 2009 Enterprise
 
#10

Re: Mehrere Dateien in Memo laden?

  Alt 16. Mär 2009, 16:22
Oh man wie dumm von mir. Ja so funktioniert es, Danke.


Edit: Tut mir Leid, dass ich euch schon wieder nerve. Nun habe ich ein Problem mit der Suche. Ich habe ja nun mehrere Dateien geladen. In diesen Dateien ist mein Suchwort auch mehrfach enthalten. Doch es wird immer nur angezeigt, dass es einmal vorhanden ist. Ich habe das Gefühl, dass die Stringliste nur bis zu einer bestimmten Stelle durchsucht wird. Hier erstmal mein Code:

Delphi-Quellcode:
if CheckBox7.Checked = true then
begin
  for i := 0 to strli.Count - 1 do
  begin
    if pos(Edit1.Text, strli[i]) > 0 then
    begin
      Memo2.Lines.Add('Eigener Suchbegriff vorhanden')
    end;
end;
strli ist eine Stringliste.

Wie schaffe ich es nun, dass die komplette Stringliste durchsucht wird?
Linus K.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:54 Uhr.
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