java吧 关注:1,259,741贴子:12,754,875
  • 19回复贴,共1

【求助在线等】socket中数据类型转换问题

只看楼主收藏回复

byte[] b = new byte[1024];
is.read(b);// 把客户端发送的指令存在b里
客户端发送的byte数组 到这里接受就变成10进制的了
例如64 125 211 236 121 6 67 49 256 8 49 48 48 48 49 50 51 52 254 13
我需要从数组里取出一些数据有double int等 该怎么办


IP属地:上海1楼2012-11-26 14:06回复
    十进制?不科学,正常应该是字节数组


    2楼2012-11-26 14:09
    收起回复
      2025-05-15 22:56:13
      广告
      自己写位运算,int i=b[0] << 24 |b[1] << 16 |b[2] << 8 |b[3];


      3楼2012-11-26 14:11
      收起回复

        怎么解决啊!!~~大神在哪里!


        IP属地:上海4楼2012-11-26 14:26
        回复


          IP属地:上海5楼2012-11-26 14:37
          回复
            double是8字节的嘛,按照上面的做法搞八次就行了
            或者你参考
            http://www.2cto.com/kf/201107/96583.html


            6楼2012-11-26 16:31
            收起回复
              放到**,对象序列化,一次全部传输,不需要转换。


              7楼2012-11-26 17:38
              收起回复
                所有人都去暴照去了,今天没人关心socket貌似


                IP属地:重庆8楼2012-11-26 17:52
                回复