Stack Overflow на русском Asked on November 30, 2021
При удалении всех строк где есть слово "Del" сообщение об ошибке: List index out of bounds (2)
var
L, K: TStringList;
i: integer;
begin
L := TStringList.Create;
L.LoadFromFile(ExtractFilePath(Application.ExeName) + 'f.txt');
for i := 0 to L.Count - 1 do
begin
if pos('Del', L.Strings[i]) > 0 then
L.delete(i);
L.SaveToFile(ExtractFilePath(Application.ExeName) + 'f.txt');
end;
L.Free;
end;
Вы "рубите сук, на котором сидите" или "выдергиваете коврик у себя из-под ног".
for i := L.Count - 1 downto 0 do
И вынесите L.SaveToFile
из цикла.
Answered by Igor on November 30, 2021
Get help from others!
Recent Questions
Recent Answers
© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP