源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

C# 中将数值型数据转换为字节数组的方法

  • 时间:2022-11-28 01:17 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:C# 中将数值型数据转换为字节数组的方法
[u]复制代码[/u] 代码如下:
private void Value_ByteArray() { double doublevalue = 258.0; Int32 intvalue = 258; string strValue = "258"; Int16 int16value = 258; MemoryStream doublemem = new MemoryStream(); BinaryWriter doublebyteWR = new BinaryWriter(doublemem); doublebyteWR.Write(doublevalue); //doublemem.Close(); BinaryReader doubleReader = new BinaryReader(doublemem); doublemem.Seek(0, SeekOrigin.Begin); double heh = doubleReader.ReadDouble();//heh确实是257.0 MemoryStream intmem = new MemoryStream(); BinaryWriter intbyteWR = new BinaryWriter(intmem); intbyteWR.Write(intvalue); MemoryStream strmem = new MemoryStream(); BinaryWriter strbyteWR = new BinaryWriter(strmem); strbyteWR.Write(strValue); MemoryStream int16mem = new MemoryStream(); BinaryWriter int16byteWR = new BinaryWriter(int16mem); int16byteWR.Write(int16value); byte[] bufferdouble = doublemem.ToArray(); byte[] bufferint = intmem.ToArray(); byte[] bufferint16 = int16mem.ToArray(); byte[] bufferstr = strmem.ToArray(); }
程序结果: double =258.0 ;8位——0 0 0 0 0 32 112 64 字节数组 Int32 = 258 ; 4——2 1 0 0 string ="258" ; 4——3 50 53 55 Int16 = 258 ; 2——2 1 Int16[] ={0,258,1} ;0 0 2 1 1 0 通过上面的例子,可以看出由数值型转换为字节数组后,程序是倒序读入的,但是读取的时候,VS会自动反转过来
[u]复制代码[/u] 代码如下:
Int16[] int16Array =new Int16[3]{0,258,1} ; MemoryStream int16mem = new MemoryStream(); BinaryWriter int16byteWR = new BinaryWriter(int16mem); foreach (Int16 hehe in int16Array) {      int16byteWR.Write(hehe); } byte[] bufferint16 = int16mem.ToArray();//0 0 2 1 1 0 BinaryReader int16Reader = new BinaryReader(int16mem); int16mem.Seek(0, SeekOrigin.Begin); Int16[] int16Arraynew=new Int16[3]; for (int i = 0; i < int16mem.Length/2; i ++) { int16Arraynew[i] = int16Reader.ReadInt16();//[0,258,1] }
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部