Einzelnen Beitrag anzeigen

Der schöne Günther

Registriert seit: 6. Mär 2013
6.156 Beiträge
 
Delphi 10 Seattle Enterprise
 
#3

AW: Textdateien bestimmte Zeile löschen.

  Alt 13. Mär 2015, 13:34
Stimmt, TStrings ist eigentlich noch besser. Ich hätte es spontan über String-Arrays gemacht:

Delphi-Quellcode:
uses System.IoUtils, System.Types;

procedure löscheZeile(const fileName: String; const deleteLine: Integer);
var
   originalLines:   TStringDynArray;
   newLines:      TStringDynArray;

   originalLineIndex:   Integer;
   newLineIndex:      Integer;
begin
   originalLines := TFile.ReadAllLines(fileName);

   SetLength(newLines, Length(originalLines) - 1);
   newLineIndex := 0;
   for originalLineIndex := Low(originalLines) to High(originalLines) do
      if (originalLineIndex <> deleteLine) then begin
         newLines[newLineIndex] := originalLines[originalLineIndex];
         Inc(newLineIndex);
      end;

   TFile.WriteAllLines(fileName, newLines);
end;
  Mit Zitat antworten Zitat