![]() |
Zeilen löschen
Hallo kann mir wer sagen, wie ich auf Buttonklick bestimmte Zeilen aus einer TXT-Datei löschen kann?
Wenn ein Label das Caption "10" hat, dann soll aus einer textdatei auch eine zeile die mit "10" anfängt gelöscht werden. Habe schon im Forum geguckt, auch etwas gefunden, aber leider ist das nicht das was ich suche. :cry: |
Re: Zeilen löschen
Am besten lädst Du die Datei in eine Stringlist und suchst deinen string mit Pos.
Löschen kannst Du mit Lines.Delete mal so als Ansatz. |
Re: Zeilen löschen
Eigentlich ganz einfach:
Die Datei einlesen, nach Zeilen durchsuchen, die mit dem gewünschten Text anfangen, diese löschen, und die Datei wieder speichern. Wenn es sich um eine Textdatei handelt, könntest Du eine TStringlist nehmen, um die Datei in den Speicher zu laden (LoadFromFile), dann kannst Du auch relativ einfach durchsuchen und löschen und schlussendlich benutzt Du SaveToFile, um den Text wieder zu speichern. |
Re: Zeilen löschen
jetzt wo ich beide post durchgelesen habe, kapier ich nix mehr. kann mir wer eine kleines beispiel geben aus dem ich lernen könnte?
es ist eine ini datei aber im prinzip ist es ja fast das selbe.. |
Re: Zeilen löschen
Du erstellst eine TStringlist, lädst mit loadfromfile die Datei in die Stringlist, löschst mit delete die fragliche Zeile und speicherst die Liste mit savetofile ab.
Hoffe geholfen zu haben Apollonius |
Re: Zeilen löschen
Hi,
so in etwa war das gemeint:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var loop : integer; sl: TStringList; Pfad : String; begin Pfad := 'C:\1.txt'; if FileExists(Pfad) then begin sl:= TStringList.Create; try sl.LoadFromFile(Pfad); for loop := Pred(sl.Count) downto 0 do if Pos(Label1.Caption, sl.Strings[loop])= 1 then sl.Delete(loop); sl.SaveToFile(Pfad); finally sl.Free; end; end; end; |
DP-Maintenance
Dieses Thema wurde von "Matze" von "Programmieren allgemein" nach "Sonstige Fragen zu Delphi" verschoben.
Delphi-Frage |
Re: Zeilen löschen
Hallo,
Zitat:
Delphi-Quellcode:
Getippt und nicht getestet.
uses
IniFiles; var fn: TFileName; ini: TMemIniFile; begin fn := ChangeFileExt(ParamStr(0), '.ini'); with TMemIniFile.Create(fn) do begin DeleteKey('Section', '10'); UpdateFile; Free; end; end; Freundliche Grüße |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:43 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