更改Array中的几个字段

时间:2014-03-08 16:06:25

标签: c# .net packet

我的byte[]代表Packet,例如:

byte[] arr = { 01, 02, 03, 04, 05, 06, 07, 08, 09, 10 };

假设字节03 04 05表示我想要更改的用户名字段(04,05是用户,03是所有此字段的长度),例如:

kinok转换为107, 108, 110, 111, 107,因此数据包内的值应更改为06, 107, 108, 110, 111, 107

如何将旧值03 04 05替换为新值06, 107, 108, 110, 111, 107

1 个答案:

答案 0 :(得分:1)

您可以将字节数组更改为字节列表并执行所有更改,包括在那里插入。然后更改回来。

详细信息取决于您的情况,例如数组大小和性能问题。转换很简单,但不是免费的。

    List<byte> bList = arr.ToList();
    // ...do your changes and inserts...
    arr = bList.ToArray<byte>();