java socket 十六进制

java写的socket长连接,要从服务器返回16进制到客户端,要求返回的十六进制为0101000000083DCC我应该怎么处理,进行发送?现在是用的SocketUti... java写的socket长连接,要从服务器返回16进制到客户端,要求返回的十六进制为
01 01 00 00 00 08 3D CC
我应该怎么处理,进行发送?

现在是用的
SocketUtil.writeStr2Stream(toHexString("0101000000083DCC"), sock.getOutputStream());
其中toHexString方法就是十六进制转换的
已转为数组
byte[] b = new byte[8];
b[0] = (byte) 0x01;
b[1] = (byte) 0x01;
b[2] = (byte) 0x00;
b[3] = (byte) 0x00;
b[4] = (byte) 0x00;
b[5] = (byte) 0x08;
b[6] = (byte) 0x3D;
b[7] = (byte) 0xCC;
DataOutputStream dos = new DataOutputStream(sock.getOutputStream());
dos.write(b);
dos.flush();
展开
 我来答
百度网友b4855c5
推荐于2016-07-12 · TA获得超过1071个赞
知道小有建树答主
回答量:823
采纳率:0%
帮助的人:956万
展开全部
这是要服务端和客户端双方对接
最好的办法是两端开发都使用相同的工具类。byte2Hex和hex2byte
追问
客户端是一个传感器,不清楚具体使用哪个工具类,我是使用的encodeHex,把字符串变16进制,但是现在还没效果
追答

如果是传感器,那你就不要使用通用的工具类而是自己定制

一种方案是直接找硬件厂家,问他们怎么实现

还有一种方案是多次尝试。

  1. 首先你要搞清楚服务器传感器传的是几个字节的

  2. 你要知道字节高低位的顺序

  3. 反传时要求的是字节还是16进制字符串

你不搞清楚双方对接的规范是没法入手的

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友3f7c1e4
2014-12-02
知道答主
回答量:1
采纳率:0%
帮助的人:1307
展开全部
转成bytes数组
追问
已经转成byte数组
但是模拟网络助手发送请求后,服务器返回的数据是一串空白
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式