假设我有两个文本文件(.txt),我有一个包含一个TMemo组件的表单.将两个文本文件快速加载到同一个Memo中的最佳方法是什么?
使用a TStringList加载每个文件,然后使用该AddStrings方法将内容传输到备忘录.
var
Tmp: TStringList;
...
Memo1.Lines.BeginUpdate;
try
Memo1.Lines.Clear;
Tmp := TStringList.Create;
try
Tmp.LoadFromFile(FileName1);
Memo1.Lines.AddStrings(Tmp);
Tmp.LoadFromFile(FileName2);
Memo1.Lines.AddStrings(Tmp);
finally
Tmp.Free;
end;
finally
Memo1.Lines.EndUpdate;
end;
Run Code Online (Sandbox Code Playgroud)
实际上,这可以很容易地推广到这样一个可能有用的方法:
procedure AppendMultipleTextFiles(Dest: TStrings; const FileNames: array of string);
var
FileName: string;
Tmp: TStringList;
begin
Dest.BeginUpdate;
try
Tmp := TStringList.Create;
try
for FileName in FileNames do
begin
Tmp.LoadFromFile(FileName);
Dest.AddStrings(Tmp);
end;
finally
Tmp.Free;
end;
finally
Dest.EndUpdate;
end;
end;
Run Code Online (Sandbox Code Playgroud)
然后你可以使用这样的方法:
Memo1.Lines.Clear;
AppendMultipleTextFiles(Memo1.Lines, [FileName1, FileName2]);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
483 次 |
| 最近记录: |