码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA 与 C# 通讯中的int 之byte[]

时间:2014-11-19 21:48:32      阅读:160      评论:0      收藏:0      [点我收藏+]

标签:style   blog   ar   color   sp   java   数据   on   div   

在JAVA与C#通讯时由于两种不通的语言INT类型不样,比如在做Soket时做数据包头确认数据长度需要一个固定的字节数中存放一个INT类型的数据发送时会读不到相同的数据。

 

在JAVA中 把 INT转为 byte[]

 1 /**
 2      * 把int32类型的数据转存到4个字节的byte数组中
 3      * @param i : int32类型的数据
 4      * @return 返回 4个字节大小的byte数组
 5      */
 6     public static byte[] ConvertIntToByteArray(int i)
 7     {
 8       byte[] arry = new byte[4];
 9       arry[3] = (byte)(((i & 0xFF000000) >> 24) & 0xFF);  
10       arry[2] = (byte)(((i & 0x00FF0000) >> 16) & 0xFF);  
11       arry[1] = (byte)(((i & 0x0000FF00) >> 8) & 0xFF);  
12       arry[0] = (byte)((i & 0x000000FF) & 0xFF);
13       return arry;
14     }

在C#中 读取

byte[] datasize = new byte[4];
soket.Receive(datasize, 0, 4, SocketFlags.None);
int size = BitConverter.ToInt32(datasize, 0);

 

JAVA 与 C# 通讯中的int 之byte[]

标签:style   blog   ar   color   sp   java   数据   on   div   

原文地址:http://www.cnblogs.com/xslt-cn/p/4109151.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!