Hier wieder mal eine Lösung für eine häufig gestellte Frage. Die nachstehende Funktion durchläuft eine Stringliste und entfernt alle leeren Zeilen.
Hinweis: Die letzte (leere) Zeile eines (z.B.) Memofeldes gilt nicht als leere Zeile, dass ist lediglich auf die Handhabung der Memofelder durch Windows zurückzuführen.
Delphi-Quellcode:
procedure RemoveEmptyLines(Strings: TStrings);
var
I: Integer;
begin
for I := Pred(Strings.Count) downto 0 do
if Strings[I] = '' then
Strings.Delete(I);
end;
Kein sonderliches Meisterwerk, aber doch oft gesucht.
...

...
P.S. Danke an jbg für den Hinweis auf den Fehler

(Lines <--> Strings)