将数组划分为N个块

时间:2015-01-28 22:12:03

标签: c# linq data-structures

我有byte[]我希望将其拆分为几个部分,我正在使用此解决方案:

public IEnumerable<IEnumerable<byte>> Chunk(byte[] list, int chunkSize)
        {
            int i = 0;
            var chunks = from name in list
                         group name by i++ / chunkSize into part
                         select part.AsEnumerable();
            return chunks;
        }

例如,我的Array大小为880字节,我这样称呼:Chunk(MyArray, 3) 所以这将我的Array划分为多个部分,最多3个字节,而我想将Array分成3个部分。 我的功能需要改变什么?

1 个答案:

答案 0 :(得分:1)

使用%代替/

 var chunks = from name in list
     group name by i++ % chunkSize into part
     select part.AsEnumerable();