【问题标题】:Most efficient way to merge two byte arrays into one byte array? [duplicate]将两个字节数组合并为一个字节数组的最有效方法? [复制]
【发布时间】:2011-09-20 08:11:27
【问题描述】:

我有两个字节数组。我想把这两个字节数组合并成一个字节数组。

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

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

【问题讨论】:

  • 你能发布你的代码吗?有许多方法来复制这两个数组,在我们看到你的代码之前,我们不会知道你是否有效地做到了。
  • 额,我的解释够清楚了
  • @NanoWhite,在我看来,您对愿意帮助您的人态度不佳,并指责他们态度不佳。事实上,就像你现在的行为方式我宁愿没有你在 SO 社区,我们都愿意帮助你,但你所拥有的只是一种糟糕的对待我们的方式。
  • 显然,您的解释不够清楚。请不要再这样做了。由于我在历史中发现的噪音而锁定。 注意许多 cmets 已从此问题中删除。

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


【解决方案1】:

只要实施得当,您现有的方法是最有效的(我认为这是“高效”的普遍理解含义)。

实现应该如下所示:

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

【讨论】:

【解决方案2】:

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多