鉴于这些整数:
public uint ServerSequenceNumber; public uint Reserved1; public uint Reserved2; public byte Reserved3; public byte TotalPlayers;
从它们创建byte []数组的最佳方法是什么?如果它们的所有值都是1,则生成的数组将是:
00000000000000000000000000000001 00000000000000000000000000000001 00000000000000000000000000000001 00000001 00000001
解决方法
这应该做你想要的. BitConverter按正在使用的处理器的字节顺序返回一个字节数组.对于x86处理器来说,它是小端的.这将最低有效字节放在第一位.
int value; byte[] byte = BitConverter.GetBytes(value); Array.Reverse(byte); byte[] result = byte;
如果您不知道将要使用该应用程序的处理器我建议使用:
int value; byte[] bytes = BitConverter.GetBytes(value); if (BitConverter.IsLittleEndian){ Array.Reverse(bytes); } byte[] result = bytes;
原文地址:https://www.jb51.cc/csharp/92829.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。