2 dxt 1515 dxt_1515 于 2016.04.25 20:38 提问

新人求助:安卓处理数据。

我收到类似p1r003B1s!这样的数据,我需要提取出003B,并且转化成十进制!
我的代码在收数据时,收的不对,望大牛指导一下!
图片说明

3个回答

q610098308
q610098308   2016.04.25 21:49

你需要先截取有用的;
String str = "p1r003B1s!";
str = str.subString(3,7);
然后再给 CharToWord(str.getByte(),str.length());

dxt_1515
dxt_1515 是这样吗?
一年多之前 回复
dxt_1515
dxt_1515 ![图片说明](http://img.ask.csdn.net/upload/201604/26/1461656444_426892.png)
一年多之前 回复
dxt_1515
dxt_1515   2016.04.26 15:41

图片说明

q610098308
q610098308   2016.04.26 15:54

你截取写的有问题,首先你的格式是不是固定的,如果是的话。就可以直接取;
如果这个格式是固定的 p1r003B1s!

    byte[ ] buf2 = new byte[5];
    System.arraycopy(d,3,buf2,0,4);

CharToWord(buf2,str.length());

看你好像是从串口读上来的数据;我不清楚你的格式;你需要按对应的格式对解析;

dxt_1515
dxt_1515 我的数据是通过UDP通信从单片机传过来的数据!就是大量的p1r003B1s!S6WGGG00!p2r!p2r00003 !p1r!p1r003B1s!p2r!p2r00003 !这样的数据!我要循环处理,还要提取出来,得用循环语句吧!
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!