C# int与byte之间转换的方法
方法1:使用左移和右移
int转化为byte[]:
public byte[] intToBytes(int value) { byte[] src = new byte[4]; src[3] = (byte)((value >> 24) & 0xFF); src[2] = (byte)((value >> 16) & 0xFF); src[1] = (byte)((value >> 8) & 0xFF); src[0] = (byte)(value & 0xFF); return src; }
byte[]转化为int:
public int bytesToInt(byte[] src, int offset) { int value; value = (int)((src[offset] & 0xFF) | ((src[offset + 1] & 0xFF) << 8) | ((src[offset + 2] & 0xFF) << 16) | ((src[offset + 3] & 0xFF) << 24)); return value; }
方法2:使用BitConverter
int转化为byte[]:
public byte[] IntToBitConverter(int num) { byte[] bytes = BitConverter.GetBytes(num); return bytes; }
byte[]转化为int:
public int IntToBitConverter(byte[] bytes) { int temp = BitConverter.ToInt32(bytes, 0); return temp; }