Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Veränderungen Textdateien (https://www.delphipraxis.net/26595-veraenderungen-textdateien.html)

Sunny123 26. Jul 2004 08:02


Veränderungen Textdateien
 
Hallo ihrs!

Ich habe in einer Textdatei daten abgespeichert in etwa dieser Form:
x|y|z
j|p|g
ding|dong|dang

Nun möchte ich genau in die Zeile gehe, wo beispielsweise x zu beginn steht und dort am ende, also zu z, noch etwas hinzufügen...

Kann mir jemand ein paar kleine Hinweise oder Denktipps geben? Mein Hauptproblem ist derzeit das, dass ich nicht weiß, wie ich die Zeile in der etwas angefügt werden soll suchen lassen kann.

Viele liebe Grüße, Sunny

Sharky 26. Jul 2004 08:29

Re: Veränderungen Textdateien
 
Hai Sunny,

eigentlich brauchst Du meine Procedure aus diesem Thread doch nur leicht zu ändern um das zu machen. Sollte mit 1-2 Zeilen Code zu machen sein ;-)

Sunny123 26. Jul 2004 09:37

Re: Veränderungen Textdateien
 
:oops: stimmt...

aber wie kann ich ihm sagen, dass er gerade in zeile so und so das und das ändern soll? :gruebel: vielleicht steht das schon indirekt drin und ich bin nur zu blöd das richtig zu finden... :( Ich hab irgendwie ein Zeilenauffindproblem....

Sharky 26. Jul 2004 09:41

Re: Veränderungen Textdateien
 
Zitat:

Zitat von Sunny123
:oops: stimmt...

aber wie kann ich ihm sagen, dass er gerade in zeile so und so das und das ändern soll? :gruebel: vielleicht steht das schon indirekt drin und ich bin nur zu blöd das richtig zu finden... :( Ich hab irgendwie ein Zeilenauffindproblem....

Hai Sunny,

entscheidend sind diese Zeilen:
Delphi-Quellcode:
....
    for ndx := 0 to myStringList.Count -1 do
    begin
      line := myStringList.Strings[ndx];
      delpos := Pos(delimiter,line); // Position des Trennzeichens
      Delete (line,1,delpos); // Alles bis einschliesslich Trennzeichen löschen
      myStringList.Strings[ndx] := IntToStr (ndx) + delimiter + line; // Neue Zeilennummer
    end;
....
In der Zeile mit delpos wird die erste Position des Trennzeichens ermittelt.
Mit Delete wird alles bis zu diesem gelöscht. So, genau da musst Du ansetzen. Du löschst jetzt nicht vom Zeilenanfang bis zu dem Trennzeichen sondern vergleichst ob der Text von Position 1 bis Position Trennezeichen -1 deinem Suchtext enstpricht (Stichwort hier für ist Copy. Wenn dies zutrifft hängst Du an den Text in line deinen neuen Text an und schreibst ihn wieder in die Aktuelle Zeile der StringListe.

Versuche mal ob Du damit weiterkommst. Wenn nicht -> Fragen ;-)

Sunny123 26. Jul 2004 13:01

Re: Veränderungen Textdateien
 
Also mal wieder ganz dolle großes DANKESCHÖN für die flotte Hilfe :-D !

Habs aber bissl anders gemacht, da ich net nach einem Text suchen musste, sondern mir eigentlich die Zeilennummer gereicht hat. (dank der Nummerierung :-)) Hab den ndx rausgenommen und stattdessen gleich Edittext als Zeilennummer eintragen lassen und dann daran den Rest gehangen. Bis jetzt klappts gut *freu*!

Noch mal ganz vielen lieben Dank! Sunny


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