Hwa*_*wau 6 arrays delphi string string-concatenation delphi-2007
如何将字符串数组转换为字符串(使用分隔符char)?我的意思是,是否有一些系统功能我可以使用而不是编写自己的功能?
如果您使用的是较新版本的 Delphi,则可以使用TStringHelper.Join,请参阅:http ://docwiki.embarcadero.com/Libraries/Sydney/en/System.SysUtils.TStringHelper.Join
Writeln(String.Join(',', ['String1', 'String2', 'String3']));
Run Code Online (Sandbox Code Playgroud)
输出将是:String1,String2,String3
由于您使用的是 Delphi 2007,因此您必须自己动手:
function StrArrayJoin(const StringArray : array of string; const Separator : string) : string;
var
i : Integer;
begin
Result := '';
for i := low(StringArray) to high(StringArray) do
Result := Result + StringArray[i] + Separator;
Delete(Result, Length(Result), 1);
end;
Run Code Online (Sandbox Code Playgroud)
只需遍历数组并将其与您的分隔符连接起来。
还有一个小测试示例:
procedure TForm1.FormCreate(Sender: TObject);
begin
Caption :=StrArrayJoin(['This', 'is', 'a', 'test'], ' ');
end;
Run Code Online (Sandbox Code Playgroud)