Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.033 Beiträge
 
Delphi 12 Athens
 
#4

Re: Trim dauert bis zu 5 minuten....Benötige schnelle Lösung

  Alt 31. Okt 2009, 04:56
Zitat:
Code:
Memo1.Lines.Delete([color=#ff0000]d[/color]);
was ist bitte D?

Ganz wichtig: Delphi-Referenz durchsuchenBeginUpdate

Delphi-Quellcode:
Memo1.Lines.BeginUpdate;
try
  for i := Memo1.Lines.Count - 1 downto 0 do
    begin
      Memo1.Lines[i] := Trim(Memo1.Lines[i]);
      if Memo1.Lines[i] = 'then
        Memo1.Lines.Delete(i);
    end;
finally
  Memo1.Lines.EndUpdate;
end;
oder
Delphi-Quellcode:
Memo1.Lines.BeginUpdate;
try
  for i := Memo1.Lines.Count - 1 downto 0 do
    begin
      S := Trim(Memo1.Lines[i]);
      if S = 'then Memo1.Lines.Delete(i)
      else Memo1.Lines[i] := S;
    end;
finally
  Memo1.Lines.EndUpdate;
end;
mit der richtigen StringList sollte es aber am Schnellsten sein (innerhalb der TStrings-Ableger)
Delphi-Quellcode:
SL := TStringList.Create;
try
  SL.LoadFromFile(OpenDialog1.Filename);
  for i := SL.Count - 1 downto 0 do
    begin
      S := Trim(SL[i]);
      if S <> 'then SL[i] := S else SL.Delete(i);
    end;
  SL.SaveToFile(OpenDialog1.Filename);
finally
  SL.Free;
end;
mit StringReplace läßt sich nur ='' und .Delete halbwegs gut realisieren und mit'm Trim wird's schon schwerer/langsamer
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat