![]() |
Mehrere Dateien in StringList Laden und wieder speichern
Hi,
ich habe ein kleines Problem, ich will mehrere Dateien in eine StringList laden, sie aber auch wieder in diese Dateien speichern können. Also wenn ich z.B. die Dateien blubb.txt, bla.txt und test.txt in die Stringlist lade sollen beim schließen des Programms diese Dateien auch so wieder gespeichert werden, samt änderungen. Dei StringList wird in ein Richedit übergeben und beim speichern wird das Richedit wieder in die Stringlist übertragen und diese dann gespeichert. Meine Idee wäre gewesen bevor eine neue Datei anfängt den Dateipfad mit Dateiname der jeweiligen Datei vor den Anfang der Datei zu schreiben, diese Zeile dann aber beim Anzeigen im Richedit nicht zu berücksichtigen. DateiName und Pfad benötige ich außerdem für die Caption des fensters und eine kleine Anzeige. Wenn jemand eine Idee hätte wie man das lösen/besser lösen kann bin ich für jeden Vorschlag offen. Edit: Ok für das Laden hab ich eine Idee, aber hat vielleicht jemand einen Vorschlag wie ich das ganze dann wieder speichere? sch die Dateien einfach in einem Array merken oder so bringt ja nichts. Gruß AnyKey |
Re: Mehrere Dateien in StringList Laden und wieder speichern
Hallo Anykey,
dein Ansinnen finde ich etwas gewöhnungsbedürftig. Wenn ich es richtig verstnden habe, dann hast Du in einem RichEdit den Inhalt von drei (Text)-Dateien. Das RchEdit impliziert, das der eingelesene Text frei editierbar ist, somit scheint es mir nicht so sinnvoll an jede Textzeile die Herkunft "anzupappen" (.Objects) Mir würde da eher so etwas vorschweben:
Delphi-Quellcode:
Und dann ein "Editfenster" für jeden String, ähnlich wie Name, Vorname, Wohnort.
record
ZeileausDatei1:string; ZeileausDatei2:string; ZeileausDatei3:string; end; Bestimmt nicht optimal, aber wenn wir Deine Dateninhalte nicht kennen, dann ist es schwierig etwas vernünftiges zu sagen. Gruß K-H |
Re: Mehrere Dateien in StringList Laden und wieder speichern
Hi, vielleicht habe ich mich etwas missverständlich ausgedrückt :)
Also ich will mehrere Dateien in eine StringList laden, die ich danach in einem RichEdit anzeige, aber auch noch für eine Andere Funktion benutze. Wenn nun Veränderungen gemacht wurden, will ich diese ja auch wieder speichern, also die Frage wie speichere ich diese Dateien jetzt wieder in ihre jeweilige Ursprungsdatei und nicht in eine neue Datei. Irgendwie muss ich mir ja merken welcher Inhalt der nun im RichEdit steht bzw. sich in der StringList befindet zu welcher Datei gehört, um diesen auch wieder dorthin zu speichern. Gruß AnyKey |
Re: Mehrere Dateien in StringList Laden und wieder speichern
Zitat:
|
Re: Mehrere Dateien in StringList Laden und wieder speichern
Hi,
ich will die Dateien in die Stringlist laden. Meine Idee war nur vor die Jeweilige Datei (also in eine Zeile bevor die Datei beginnt) den Dateinamen zu schreiben und das dann anhand dessen zu Speichern und die Anzeige und die Caption zu schalten. Aber es gibt ja bestimmt eine bessere lösung :) Gruß AnyKey |
Re: Mehrere Dateien in StringList Laden und wieder speichern
Verstehe ich das richtig: du willst mehrere Dateien in ein RichEdit laden, aber jeweils nur eine zu einem Zeitpunkt und die Änderungen sollen wieder in diese Datei geschrieben werden?
|
Re: Mehrere Dateien in StringList Laden und wieder speichern
Ehrlich gesagt verstehe ich den Sinn dahinter noch nicht ganz. Evtl. könntest du aber auch für jede Datei ein eigenes Memo (oder Richedit) dynamisch anlegen und so positionieren, dass die einzelnen Texte direkt untereinander stehen. Allerdings kannst du dann nicht zwei Dateien "gleichzeitig" bearbeiten, also beispielsweise nicht das Ende der einen und den Anfang der nächsten Datei markieren/bearbeiten,...
Vielleicht solltest du nochmal genau erklären, wie du dir das genau vorstellts und vielleicht auch warum ;-) Vielleicht gibt es ja eine bessere Lösung. MFG Edit: Wenn du das so meinst, wie es Uwe Raabe beschrieben hat, dann kannst du dir natürlich die mehreren Memos sparen... |
Re: Mehrere Dateien in StringList Laden und wieder speichern
Nein das ist falsch, ok ok vergesst das RichEdit :)
Ich will mehrere Dateien in eine Stringlist laden, wie das geht habe ich denke ich auch rausgefunden:
Delphi-Quellcode:
müsste denke ich so funktionieren. Das Problem das sich aber eher stellt ist das Speichern dieser Stringliste, der Inhalt kommt ja aus verschiedenen Dateien und er soll auch wieder in diese Dateien zurück und nicht etwa in einer neuen Datei gespeichert werden.
for i := 0 to OpenDialog.Files.Count-1 do
begin Child.ausgabeList.LoadFromFile(OpenDialog.Files[i]); end; Gruß und sorry wenn ich für Verwirrung sorge :) nehmts mir nich übel ;) AnyKey Edit: achso und die Dateien sollen alle zur selben zeit ins Richedit geladen werden und auch bearbeitet werden können. |
Re: Mehrere Dateien in StringList Laden und wieder speichern
Ich versteh gar nicht wie du bei einer neuen Eingabe im Richedit feststellen willst, in welche Datei es kommen soll.
So wie ich dich verstehe hast du 3 Dateien in denen zeilenweise Texte stehen. Alle Dateiinhalte von den Dateien möchtest du in einen Richedit laden. Im Richedit werden Veränderungen vorgenommen. Danach möchtest du den gesamten Inhalt des Richedits in diese drei urprünglichen Dateien wieder speichern. Alles richtig verstanden? Edit: So wie du es vorhast kann es nicht gehen. Du musst einen Bezug des Textes zur jeweiligen Datei behalten. Text im Richedit bzw. in der Stringliste Zitat:
|
Re: Mehrere Dateien in StringList Laden und wieder speichern
@Tyrael Y. genau so solls mal funktionieren. Merke allerdings gerade selber das, dass nich grad unkompliziert ist :) um dem ganzen aber den schrecken zu nehmen, vielleicht kann ich es auch so machen dass man überhaupt keine Datensätze ändern kann, wenn ich recht überlege sollen diese Dateien mit denen ich das vorhabe garnicht verändert werden.... :gruebel: ok ich mach mir noch mal gedanken und meld mich dann noch mal.
Gruß AnyKey |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:10 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 by Thomas Breitkreuz