当前位置:  编程技术>.net/c#/asp.net

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

    来源: 互联网  发布时间:2014-10-19

    本文导语:  代码如下: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();Bina...

代码如下:

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会自动反转过来

代码如下:

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]
}

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 如何在jbuider 6中将swing 控件放在自己想要放的位置 在线等待
  • 怎样在程序中将普通用户切换成root用户
  • 如何在unix中将目录压缩成.zip的格式?(在线等)
  • mysql中将null值转换为0的语句
  • 如何在java中将任意字符转化为数字
  • inittab文件中将系统运行级别设置为0了,无法启动pc,怎么改回来?
  • 如何XP系统中将一般用户提升为管理员权限?(在线等!!)
  • Android中将View的内容保存为图像的简单实例
  • JAVA中将汉字写到文本文件的问题
  • jsp中将后台传递过来的json格式的list数据绑定到下拉菜单select
  • 请问那位高手能帮我解决在jsp中将本地文件上传到数据库服务器的一个字段中的问题
  • sqlserver中将varchar类型转换为int型再进行排序的方法
  • awk中将字符串转化为时间戳的办法
  • 50分问个简单问题:LINUX下在system-config-network中将无线网卡的essid设置为自动,会有什么效果?
  • 在servlet中将<>转化成&lt&gt的函数是什么
  • php中将一段数据存到一个txt文件中并显示其内容
  • 在grub.conf中将默认启动设为Winxp,延迟时间为0,现在系统一开机就进了Winxp,怎么也回不到redhat了。
  • 请问可以在APPLET程序中将图象旋转90度显示吗?
  • java中将汉字转换成拼音的实现代码
  • 请教:在进程运行中将其转换成守护进程会怎么样?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3