Цитата:
Сообщение от Sibay
Не ради наезда написал это, и дело не в том, что такая задача не была поставлена. Я сам не далеко ушел от новичка и в самом начале мне бы была полезна подобная информация, ею и поделился. Собственно, поэтому и написал Memory Mapped Files чтобы те, кому интересно, могли погуглить в целях общего развития.
|
Не сильно поможет. Все равно надо будет один из них загрузить в память. Если файлы действительно большие, то надо их отсортировать. Вот тогда можно обойтись малым объемом памяти. Хотя на диске все-равно будет много места занято, т.к. проидется создавать третий файл, содержащий результат.
А для маленьких файлов Alegun был на правльном пути. Вот мой вариант:
Код:
procedure TForm1.Button1Click(Sender: TObject);
var
i : integer;
sl1, sl2 : TStrings;
begin
sl1:= TStringList.Create;
sl2:= TStringList.Create;
Try
sl1.LoadFromFile('1.txt');
sl2.LoadFromFile('2.txt');
for i := sl1.Count - 1 downto 0 do
if sl2.IndexOf(sl1[i]) >= 0 Then sl1.Delete(i);
sl1.SaveToFile('1.txt');
Finally
sl1.Free;
sl2.Free;
End;
end;