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

时间:2011-09-20 08:11:28

标签: .net vb.net .net-4.0 merge bytearray

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

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

是否有更有效的方法使用VB.NET和.NET 4合并两个字节数组?

2 个答案:

答案 0 :(得分:11)

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

实现应如下所示:

var merged = new byte[array1.Length + array2.Length];
array1.CopyTo(merged, 0);
array2.CopyTo(merged, array1.Length);

答案 1 :(得分:9)

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

有关详细信息,请参阅此问题:Array.Copy vs Buffer.BlockCopy
这一个用于硬数字:Best way to combine two or more byte arrays in C#