将两个字节数组合并为一个字节数组的最有效方法是什么?

Nan*_*ite -2 .net vb.net merge bytearray .net-4.0

我有两个字节数组.我想将这两个字节数组合并为一个字节数组.

通常,我只是创建一个新的字节数组,其长度为= byte array#1 + byte array#2.然后将字节数组#1和#2复制到新的字节数组.

有没有一种更有效的方法来使用VB.NET和.NET 4合并两个字节数组?

Jon*_*Jon 11

只要正确实施,您现有的方法是最有效的(我认为通常理解为"高效"的意思).

实现应如下所示:

var merged = new byte[array1.Length + array2.Length];
array1.CopyTo(merged, 0);
array2.CopyTo(merged, array1.Length);
Run Code Online (Sandbox Code Playgroud)


Sto*_*net 9

在我们的Tcpclient中,我们喜欢使用Buffer.BlockCopy而不是array.copy.

有关详细信息,请参阅此问题:Array.Copy与Buffer.BlockCopy
这一个用于硬编号:在C#中组合两个或多个字节数组的最佳方法