Android-FileInputStream使用的问题

风的泪 2016-12-05 02:29:14
1、当我使用
int countRead = mInputStream.read(buffer);
可以正常读到中去,使用
int countRead = mInputStream.read(buffer, offset, remaining);
就抛出异常:read failed: EIO (I/O error)

2、我是在while里用mInputStream.read(buffer);的,第一次读很正常,但是当我读完第一次,处理完数据后,再去mInputStream.read(buffer)就抛出异常:read failed: ENODEV (No such device);但是如果我不去做数据处理,只打log,结果就很正常。而我的数据处理也很简单:
channel =((buffer[0] & 0xff) << 24)
| (buffer[1] & 0xff << 16)
| ((buffer[2] & 0xff) << 8)
| (buffer[3] & 0xff);

messageLength = ((buffer[4] & 0xff) << 24)
| ((buffer[5] & 0xff) << 16)
| ((buffer[6] & 0xff) << 8)
| (buffer[7] & 0xff);
其他也没做事了。

PS:问题手机三星、华为系列的手机,其他手机基本正常使用。
...全文
336 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

80,349

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧