C#字节数组与int转换(含高低位转换的内容).doc

C#字节数组与int转换(含高低位转换的内容).doc

ID:57686726

大小:17.00 KB

页数:2页

时间:2020-09-01

C#字节数组与int转换(含高低位转换的内容).doc_第1页
C#字节数组与int转换(含高低位转换的内容).doc_第2页
资源描述:

《C#字节数组与int转换(含高低位转换的内容).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、字节数组与int转换    在C#中将INT型转为字节数组后,其是以高位到低位排序存储的,而在C++和JAVA中是以低位到高位排序的,以致如果直接将转换后的字节数组与C++或JAVA通信时会出错。需要反排序后再传输。       字节转为Int代码    C#转换代码如下:   C#byte[]bytes={0,0,0,25};//Ifthesystemarchitectureislittle-endian(thatis,littleendfirst),//reversethebytearray.if(BitConverter.IsLittleEndian)//判

2、断计算机结构的endian设置Array.Reverse(bytes);//转换排序inti=BitConverter.ToInt32(bytes,0);Console.WriteLine("int:{0}",i);//Output:int:25BitConverter.IsLittleEndian字段为指示数据在此计算机结构中存储时的字节顺序(“Endian”性质)。如果结构为Little-endian,则该值为true;如果结构为Big-endian,则该值为false。不同的计算机结构采用不同的字节顺序存储数据。“Big-endian”表示最大的有效字节位于

3、单词的左端。“Little-endian”表示最大的有效字节位于单词的右端。 Int转为字节代码 C#转换代码如下: byte[]aa=BitConverter.GetBytes(1243); if(BitConverter.IsLittleEndian)      Array.Reverse(aa);  JAVA转换代码如下:publicbyte[]int2bytes(inta,booleanisHighFirst)       {           byte[]result=newbyte[4];           if(isHighFirst)     

4、      {               result[0]=(byte)(a>>24&0xff);               result[1]=(byte)(a>>16&0xff);               result[2]=(byte)(a>>8&0xff);               result[3]=(byte)(a&0xff);           }           else           {               result[3]=(byte)(a>>24&0xff);               result[2]

5、=(byte)(a>>16&0xff);               result[1]=(byte)(a>>8&0xff);               result[0]=(byte)(a&0xff);           }           returnresult;       }

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。