问题是这样的: 
我在socket的server端,通过write()和flush()方法,向socket的client发送数据。
有一天我忽然发现,我明明通过server向client发了两批数据,但是client却只收到了一批数据,经过检查发现,数据没有丢失,都收到了,但是socket居然自作主张把两批数据混合为一批数据发给client了。 请问这个问题有没有办法解决?谢谢!

解决方案 »

  1.   

    当然是这样的除非你client收到并回复才算一次消息的发送和接收
      

  2.   

    发送数据用的是new BufferedOutputStream(this.client.getOutputStream()); 
    然后使用BufferedOutputStream的write和flush方法
      

  3.   

    对于1楼,可能我没太讲清楚。
    现在client可以收到数据,也可以回复数据,问题在于,因为太过socket发了2批数据,儿client只收到了1批(虽然,这1批里面包含了我所有发送的2批数据,但这显然不是我想要的)我希望,socket的server发几批数据,client就收到几批数据