16.36.2. Примеры
Минимальный скрипт, использующий списки
var
SL : TStringList;
begin
SL := TStringList.Create;
SL.Free;
end.
Вывод содержимого списка в протокол
// Вывод списка строк в протокол в цикле
procedure PrintStringListToLog(ASL : TStringList);
var
i : integer;
begin
for i := 0 to ASL.Count - 1 do
AddToLog(ASL[i]);
end;
var
SL : TStringList;
begin
SL := TStringList.Create;
SL.Add('111111');
SL.Add('222222');
SL.Add('333333');
PrintStringListToLog(SL);
SL.Free;
end.
Добавление, удаление и перемещение строк
var
SL : TStringList;
begin
SL := TStringList.Create;
// Добавление строк
SL.Add('111111');
SL.Add('222222');
SL.Add('333333');
// Удаление второй строки
SL.Delete(1);
// Перестановка строк
SL.Move(0,1);
// Вывод результатов
PrintStringListToLog(SL);
SL.Free;
end.
Добавление, удаление и перемещение строк
var
SL : TStringList;
begin
SL := TStringList.Create;
// Добавление строк
SL.Add('111111');
SL.Add('222222');
SL.Add('333333');
// Удаление второй строки
SL.Delete(1);
// Перестановка строк
SL.Move(0,1);
// Вывод результатов
PrintStringListToLog(SL);
SL.Free;
end.
Поиск строк
var
SL : TStringList;
begin
SL := TStringList.Create;
// Добавление строк
SL.Add('111111');
SL.Add('222222');
SL.Add('333333');
// Примеры поиска строк
AddToLog(IntToStr(SL.IndexOf('111')));
AddToLog(IntToStr(SL.IndexOf('111111')));
AddToLog(IntToStr(SL.IndexOf('333333')));
SL.Free;
end.
В данном примере первая операция поиска не найдет образец, и функция вернет -1. Поиск "333333" и "111111" будет успешным и метод вернет их индексы.
Работа с текстовыми файлами
var
SL : TStringList;
begin
SL := TStringList.Create;
// Добавление строк
SL.Add('111111');
SL.Add('222222');
SL.Add('333333');
// Сохранение в текстовый файл
SL.SaveToFile(GetAVZDirectory + '1.txt');
// Загрузка из текстового файла
SL.LoadFromFile(GetAVZDirectory + '1.txt');
SL.Free;
end.