求助蓝牙数据流读取问题,buffer的状态是一个迷

问题描述

求助蓝牙数据流读取问题,buffer的状态是一个迷

各位大大好,我是java小白+安卓小白,最近遇到一个头疼的问题:
我在创建蓝牙连接之后,开启新线程读取数据:(以下为线程类里的代码)
Thread ReadThread=new Thread(){
//开辟缓冲区buffer
byte[] buffer = new byte[1024];
int k=1;
int num=0;
public void run(){
try {

while(count==0)
{
Log.e(TAG, "等待");
count =is1.available();
}
while(true){
Log.e(TAG, "读入数据");

Log.e(TAG, "k="+k);
k++;
num = inputstream.read(buffer); //读入数据

Log.e("TAG", "num="+num);
Log.e("TAG", "buffer="+buffer);

String ss=toHexString1(buffer);//调用byte-->string方法
//data=inputstream.read();
if(is1.available()==0){
Log.e("TAG", "break");

break;
}
}

        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

};
k是inputStream.read()执行的次数,num是读取进来的字节数量
大概就这样执行12次左右(k++到12,11次num显示为1024,最后一次只有30~50),logcat 输出“break”,也就是说此时is1.available()==0
可是我的蓝牙数据是一直不停得发送啊,求问各位大大为什么呢?

还有就是,有一次我在if(is1.available()==0)之前写了data=is1.read();就出现了
k++不停,而每一次num都是有几十,这时候数据还可靠吗?为什么会出现这种情况呢?

时间: 2024-12-03 06:57:24

求助蓝牙数据流读取问题,buffer的状态是一个迷的相关文章

c#编写程序从数据流读取文件

问题描述 c#编写程序从数据流读取文件 c#新手:求大神指教 用c#从数据流读取文件,远程读取文件,用到文件服务器 解决方案 你部署http或ftp服务器,直接用webclient等方式下载就行了

Android编程读取Assets所有文件(遍历每一个文件夹)并存入sdcard的方法_Android

本文实例讲述了Android编程读取Assets所有文件(遍历每一个文件夹)并存入sdcard的方法.分享给大家供大家参考,具体如下: private void CopyAssets(String assetDir, String dir) { String[] files; try { // 获得Assets一共有几多文件 files = this.getResources().getAssets().list(assetDir); } catch (IOException e1) { ret

内存映射-C#用seek一次读取1M的方式上传一个大文件为什么依然占用如此大的内存

问题描述 C#用seek一次读取1M的方式上传一个大文件为什么依然占用如此大的内存 C#用seek一次读取1M的方式上传一个大文件为什么依然占用如此大的内存,必须用内存映射吗? 解决方案 你肯定频繁的new数组了,用一个公共的空间吧 解决方案二: 为什么依然占用如此大的内存,具体是多大呢? 建议你监控一个内存的使用,是哪段代码引起的.一句句进行调试应该就可以发现,如果不能可以考虑增加一个 Sleep 语句. 按正常来说,打开文件,与 Seek 操作不需要多少内存的.只有读时,需要分配读数据的空间

如何实现Tabcontrol的每个标签显示不同的图片,且正常状态显示一个图片,选中状态显示另一个图片

问题描述 应用TabControl,我可以实现每个标签页上显示不同的图片,但是如何更进一步,使每个Tab正常状态显示一个图片,而选中状态显示另一个图片?请各位大虾指教,不胜感激!!已经困扰好几天了~~~ 解决方案 解决方案二:补充下问题,如果是自定义TabItem,该如何自定义呢?是否每个TabItem都要自定义?解决方案三:css+JS解决方案四:happy,可否仔细解释下?谢谢解决方案五:只要在TabControl的选择事件中重新设置显示图片就可以

求助:如何保持用户的登录状态?我希望登录一次,一个月之内不需要重新登录

问题描述 目前用ASP.NETMVC5.用Identity管理用户的注册和登录.但是我发现隔一段时间就需要用户重新登录.我希望一个月之内不用重新登录. 解决方案 解决方案二:cookies解决方案三:session默认有效期20分钟,超过20分钟不操作(提交),就失效了解决方案四:引用1楼Z65443344的回复: cookies 能不能具体讲一下如何用cookie保持登录状态啊?刚开始做前端开发,有些还不太懂哦解决方案五:核心代码:http://www.cnblogs.com/han1982/

[求助]设置和读取Cookie的问题???

问题描述 请教各位大侠,我想在前台页面的javascript代码中设置一个cookie,然后在后台CS代码中将cookie读取出来,请问前台和后台的代码该怎么写?以下是我写的代码,但在后台老是读不出来!读出Request.Cookies["vid"]的值为null;前台javascript代码:document.cookie="vid=123";后台CS代码:Response.Write(Request.Cookies["vid"].Value)

求助!java读取两个csv文件,并分析统计里面的数据后输出

问题描述 问题是这样的,现在有log.csv和bug.csv两个文件.文件格式分别如下log.csv:Revision:e593164022433d17467e437ca5f1d1580fcf9c34Author:shankhabanerjee<shankhba@in.ibm.com>Date:2013/9/2614:01:10Message:FixforBug415308-[1.8][compiler]IllegaltypeannotationsnotrejectedSigned-off-b

求助。。读取excel的时候报错

问题描述 代码如下stringfilename="";intindex=0;OpenFileDialogflDialog=newOpenFileDialog();flDialog.Filter="Excelfiles|*.xlsx|AllFiles(*.*)|*.*";WorkbookdataWorkbook;StreamfileStream=null;WorksheetsheetOne=null;boolres=(bool)flDialog.ShowDialog(

100分求助!webBroswer 空间清除当前登录状态问题

问题描述 这个帖子我不知道具体该发到哪个板块了..winform中嵌入了webbroswer控件,想做到不退出程序,直接跳转,循环自动登陆多个账号.但是每次登陆后想换下一个,跳转登陆页的时候都会自动跳转到已登陆的页面.我想去模拟点击,但是那个按钮是在指向某个DIV之后才会出现的.没办法选择到.而且是调用了某个JS方法.也看不到请求的url.如果外面的浏览器跑,就可以使用F12带的工具,把所有的cookie删掉.但是很遗憾,webrouswer控件的cookie只提供了get的方法,没有set.调