function StringListFromStrings(const Strings: array of string): TStringList;
var
i: Integer;
begin
Result := TStringList.Create;
for i := low(Strings) to high(Strings) do
Result.Add(Strings[i]);
end;
type
TStringArray = array of string;
procedure StringListFromStrings(const StringArray: TStringArray;
const SL: TStringList);
var
// Versions of Delphi supporting for..in loops
s: string;
// Pre for..in version
// i: Integer;
begin
// TStringList should be created and passed in, so it's clear
// where it should be free'd.
Assert(Assigned(SL));
// Delphi versions with for..in support
for s in StringArray do
SL.Add(s);
// Pre for..in versions
// for i := Low(StringArray) to High(StringArray) do
// SL.Add(StringArray[i]);
end;
function StringListFromStrings(const Strings: array of string): TStringList;
var
i: Integer;
begin
Result := TStringList.Create;
Result.addStrings(Strings);
end;
3条答案
按热度按时间sc4hvdpw1#
一旦创建了字符串列表,就可以简单地调用
AddStrings()
。或者,对于不支持接受数组的
AddStrings()
重载的较旧版本的Delphi,您可以使用自己的重载。使用开放数组参数为调用者提供了最大的灵活性。
wqsoz72f2#
对于Delphi的预泛用版本,您可以使用如下内容:
nwo49xxi3#
在最新的Delphi版本中,您可以像这样调用TStrings和TstringList类的“addStrings”方法:
您可以在https://docwiki.embarcadero.com/Libraries/Sydney/en/System.Classes.TStrings.AddStrings上找到有关此方法的文档