在我的PC上,我启动了一个服务器,通过蓝牙将字节发送到Android手机。 我每隔10秒发送一次使用相同输出流的不同字节。Java/Android - 从输入流读取后写入输出流
outputStream.write(buffer);
outputStream.flush();
thisThread.sleep(10000);
缓冲区是一个字节组从而改变每次循环
现在我想读取缓冲区的Android手机:
while((bytes = inputStream.read(buffer)) != -1) {
//do something
}
//do more
我现在的问题是,读(缓冲)犯规回报 - 1。 我如何通知Android手机的字节已被转移,所以我可以做 我希望在while循环后的事情?
我更喜欢对象流,它解决了这样的问题 – sherif 2012-04-18 19:47:33
从来没有尝试过对象流,从来没有听说过它。所以我必须将我的bytearray转换为一个对象并调用ObjectOutputStream.writeObject(object)? – tschakkkiiiii 2012-04-19 20:22:42
ObjectStreams是关于java的最好的想法之一。你的类必须实现可序列化的接口(它只是一个形式没有函数),那么你创建一个ObjectOutputStream:new ObjectOutputStream(someOtherStream)它就是它http://tutorials.jenkov.com/java-io/objectoutputstream.html – sherif 2012-04-20 21:23:45