+ -
当前位置:首页 → 问答吧 → 求助!关于网络字节转换问题

求助!关于网络字节转换问题

时间:2011-09-18

来源:互联网

求助!关于网络字节转换问题
目前我这边有一个http访问的程序,对方的响应消息网络协议是这样的

字段名称 类型 长度 说明
a 32位无符号整数 4 高16位表示主版本,低16位表示低版本
  (目前的通信协议是高16位为0xfefd, 低16位为 0xfcfb)

b 32位无符号整数 4 表示长度


c 32位无符号整数 4 类型为32位无符号整数

d 32位无符号整数 4  

e 16位无符号整数 2  


我的程序大概是这样写的
//通过http发送一个请求
url = new URL("http://xxx.xxx.xxx/xxx");
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
conn.setConnectTimeout(0); 
conn.setRequestMethod("POST");
conn.setDoOutput(true);
conn.setDoInput(true);
conn.setUseCaches(false);
HttpUrlLogin http =new HttpUrlLogin();
conn.getOutputStream().write("1".getBytes());

//获取返回响应的字节流
InputStream in = conn.getInputStream();

如何根据上面的协议得到a,b,c,d,e 的值,目前是我疑惑的地方,如果通过in一个个字节遍历循环得到的是乱码,我想应该会有字节转换的问题。但是这一块也就是需要大侠帮忙的地方
不知道代码怎么实现这些转换

作者: httpjava   发布时间: 2011-09-18

持续关注此贴,等待热心的火龙果

作者: k3108001263   发布时间: 2011-09-18

求助各位大侠

作者: httpjava   发布时间: 2011-09-18