java 串口接收数据三角显示。求教
串口接收数据出现这个情况怎么改?接收代码段:try{charb;while(inputStream.available()>0){b=(char)inputStream....
串口接收数据出现这个情况怎么改?
接收代码段:
try {
char b;
while (inputStream.available() > 0) {
b=(char)inputStream.read();
buf.append(b); //buf----StringBuilder buf = new StringBuilder(128);
System.out.println(buf.toString());
//buf.delete(0, buf.length());
}
显示为
1
12
123
1234
12345
123456
并且串口发第二次的时候显示为这样:
1234561
12345612
123456123
1234561234
12345612345
123456123456
用StringBuffer来存数据显示也不对。求教一下高手。。
PS:比如发送123456.就显示123456就行。完整接受就可以。
发送第二次的时候貌似没有清理之前的数据。所以会把之前发送的数据全部读取。 展开
接收代码段:
try {
char b;
while (inputStream.available() > 0) {
b=(char)inputStream.read();
buf.append(b); //buf----StringBuilder buf = new StringBuilder(128);
System.out.println(buf.toString());
//buf.delete(0, buf.length());
}
显示为
1
12
123
1234
12345
123456
并且串口发第二次的时候显示为这样:
1234561
12345612
123456123
1234561234
12345612345
123456123456
用StringBuffer来存数据显示也不对。求教一下高手。。
PS:比如发送123456.就显示123456就行。完整接受就可以。
发送第二次的时候貌似没有清理之前的数据。所以会把之前发送的数据全部读取。 展开
展开全部
你原本预期应该是怎么样?你光说他不对,可是我不知道你的需求。
更多追问追答
追问
PS:比如发送123456.就显示123456就行。完整接受就可以。
发送第二次的时候貌似没有清理之前的数据。所以会把之前发送的数据全部读取。
追答
try {
char b;
StringBuilder buf = new StringBuilder();
while (inputStream.available() > 0) {
b=(char)inputStream.read();
buf.append(b);
}
System.out.println(buf.toString());
这样写不写吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询