如何将IEnumerable转换为字节数组

3
我需要将几个数组合并成一个。我发现以下方法似乎是一个不错的选择:
IEnumerable<byte> Combine(byte[] a1, byte[] a2, byte[] a3)
{
    foreach (byte b in a1)
        yield return b;
    foreach (byte b in a2)
        yield return b;
    foreach (byte b in a3)
        yield return b;
}

然而,我对于 IEnumerable 不是很熟悉。我如何将结果转换回 byte[],以便进一步使用?

谢谢。


1
myEnumerable.ToArray()?还是我误解了你的意思? - MAV
你为什么想要一个数组? - Gilad Green
1个回答

4

不需要迭代它们,只需使用Linq的.Concat方法:

var joint = a1.Concat(a2).Concat(a3);

如果你想将其作为数组返回:
joint.ToArray();

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接