我的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
?
答案 0 :(得分:1)
您可以将字节数组更改为字节列表并执行所有更改,包括在那里插入。然后更改回来。
详细信息取决于您的情况,例如数组大小和性能问题。转换很简单,但不是免费的。
List<byte> bList = arr.ToList();
// ...do your changes and inserts...
arr = bList.ToArray<byte>();