TBytes
组合数组的最佳方法是什么?
所有数组的大小相同。我希望将 的内容Array2
添加到 的末尾Array1
、Array3
末尾Array2
等等。
TBytes
组合数组的最佳方法是什么?
所有数组的大小相同。我希望将 的内容Array2
添加到 的末尾Array1
、Array3
末尾Array2
等等。
要将两个合并TBytes
在一起,您必须分配第三个TBytes
,即两个个体的总长度TBytes
,然后将两个字节复制到其中。例如:
var
arr1, arr2, merged: TBytes;
begin
...
SetLength(merged, Length(arr1) + Length(arr2));
if arr1 <> nil then Move(arr1[0], merged[0], Length(arr1));
if arr2 <> nil then Move(arr2[0], merged[Length(arr1)], Length(arr2));
end;
您可以使用类似字符串的操作:
var
LArray1, LArray2, LMerged: TBytes;
begin
...
LMerged := LArray1 + LArray2;
end;
或者您可以使用系统的“Concat”功能:
var
LArray1, LArray2, LMerged: TBytes;
begin
...
LMerged := Concat(LArray1, LArray2);
end;