gpt4 book ai didi

delphi - Delphi-针对另一个文件检查文件的每一行

转载 作者:行者123 更新时间:2023-12-03 19:50:24 29 4
gpt4 key购买 nike

我必须对照另一个文件检查文件的每一行。
如果第二个文件中存在第一个文件中的一行,则必须删除它。
现在,我正在使用2个列表框,并且“对于listbox1.items.count-1可以开始...”
我的程序可以运行,但是我必须检查一下是否有超过100万行的大文件。
有没有一种更快的方法呢?
我想将文件加载到内存中以便非常快!
谢谢

最佳答案

您可以为此使用TStringList。第二个文件的列表应排序以加快搜索速度。试试这个:

var
l1, l2: TStringList;
i: integer;
begin
l1 := nil;
l2 := nil;
try
l1 := TStringList.Create;
l1.loadfromFile('file1');

l2 := TStringList.Create;
l2.LoadFromFile('file2');
l2.Sorted := True;

for i := l1.Count -1 downto 0 do
begin
if l2.IndexOf(l1[i]) <> -1 then
l1.Delete(i);
end;

l1.SaveToFile('file1');
finally
FreeEndNil(l1);
FreeEndNil(l2);
end
end

关于delphi - Delphi-针对另一个文件检查文件的每一行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34617255/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com