日期:2014-05-18  浏览次数:23006 次

C# ushort 和byte[]互转的问题
一个ushort的数据,怎么转成byte[]?
转成了byte[]后 怎么转回来?

我的代码
  //测试的testNum1
  ushort testNum1=34212;
   
  //测试的testByte 
  byte[] testByte = new byte[2];

  //将testNum1拆开放进包里面
  testByte[0] = (byte)((0xff00 & testNum1) >> 8);
  testByte[1] = (byte)(0xff & testNum1);
   
  //在网上看到的这一句,不知道有何意义,请知道的朋友说明一下
  Array.Reverse(testByte);

  //将testByte 转回成ushort
  ushort test = BitConverter.ToUInt16(testByte, 0);

------解决方案--------------------
不是让你去google吗,哪个是低位哪个是高位由平台决定...Little Endian高位在后,Big Endian高位在前,PC是Little Endian,自己判断...