Числа из второго списка удалить в первом списке, как?

Вобщем нужно числа из второго списка удалить в первом списке и результат вывести в Memo, не получается т.к не умею работать с функцией Delete. Спасибо.Код:
procedure TForm1.sButton1Click(Sender: TObject);
var
a, b:TStringList;
i:integer;
begin
a:=TStringList.Create;
b:=TStringList.Create;
a.LoadFromFile('1.txt');
b.LoadFromFile('2.txt');
for i:=0 to b.Count-1 do begin
if Pos(b[i], a[i])<>0 then
Delete(.....); // т.е если число из второго списка нашли в первом списке то удаляем его из первого списка, в конце результат выводим в мемо
end;
end;
9 ответов

for i:=0 to b.Count-1 do begin
 if a.IndexOf(b[i]) >= 0 then a.Delete(a.IndexOf(b[i])); 
end;


for i:=0 to b.Count-1 do begin
 if a.IndexOf(b[i]) >= 0 then a.Delete(a.IndexOf(b[i])); 
end;
не работает -----------------------блин, извиняюсь, все работает, я про memo забыл))) спасибо большое


не работает
Что значит не работает?


Что значит не работает?
уже работает, но почему-то не все добавляет в мемо, в первом списке 250 строк, во втором 600, должно выдавать 350 строк а выдает всего 250 почему-то


уже работает, но почему-то не все добавляет в мемо, в первом списке 250 строк, во втором 600, должно выдавать 350 строк а выдает всего 250 почему-то
С тем какой список первый а какой второй разобрался? Из какого списка должны удаляться строки?


С тем какой список первый а какой второй разобрался? Из какого списка должны удаляться строки?
строки должны удаляться с первого списка, а строки которые остались (результат) должны выводиться в мемо, они и выводятся но не все (чуть меньше половины нету), я заметил что строк выводится столько сколько и строк во второй тхт файле (переменная b)


все еще не получается...


помогите кто-то пожалуйстаnorthener, дал нормальный код, но почему-то мне не выводит все строки, строк выводит столько, сколько строк во втором файле (т.е 247) а должно выводить 353 строки (т.к в первом в файле 600 строк)
procedure TForm1.sButton1Click(Sender: TObject);
var
a, b:TStringList;
i:integer;
begin
a:=TStringList.Create;
b:=TStringList.Create;
a.LoadFromFile('1.txt');
b.LoadFromFile('2.txt');
for i:=0 to b.Count-1 do begin
if a.IndexOf(b[i]) >= 0 then
a.Delete(a.IndexOf(b[i])); 
end;
Form1.sMemo1.Lines.Add(a[i]);
end;
end;


for i:=0 to b.Count-1 do begin
 if a.IndexOf(b[i]) >= 0 then begin
 a.Delete(a.IndexOf(b[i])); 
 end;
end;
sMemo1.Lines.Assign(a);