如何从字节数组中删除字节

Ice*_*ind 5 .net c# bytearray

我有一个程序,其字节数组大小不一,但大约2300字节.我想要做的是创建一个函数,它将创建一个新的字节数组,删除我传递给它的所有字节.例如:

byte[] NewArray = RemoveBytes(OldArray,0xFF);
Run Code Online (Sandbox Code Playgroud)

我需要一个函数来删除任何等于0xFF的字节并返回一个新的字节数组.

任何帮助,将不胜感激.顺便说一句,我正在使用C#.

Dar*_*rov 15

您可以使用Where扩展方法来过滤数组:

byte[] newArray = oldArray.Where(b => b != 0xff).ToArray();
Run Code Online (Sandbox Code Playgroud)

或者如果要删除多个元素,可以使用Except扩展方法:

byte[] newArray = oldArray.Except(new byte[] { 0xff, 0xaa }).ToArray();
Run Code Online (Sandbox Code Playgroud)