AVZ 5. Руководство пользователя
×
Меню
Индекс

16.34.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.