毕业设计遇到大麻烦了,再过一个星期就要交东西了。客户和服务器的通讯没解决,想了很多办法也没有办法解决。很奇怪,能实现远程申请,但申请成功后,进入游戏截面的时候,双方(服务器和客户端)都收不到信息。请各位大虾帮我解决。本人用纯JAVA基于C/S开发这个毕业设计。程序有点长,这里又不让发附件。附上请愿意帮忙的各位高手发邮件给我,我把源程序发过去,帮忙修改。

解决方案 »

  1.   

    网上貌似有N多code可以直接download.找写类似的game看看它们是如何通讯的.
      

  2.   

    自己以前和别人也合作做个五子棋,有单击版和网络版的。你把程序发过来,我看看能不能帮上忙[email protected]
      

  3.   

    ls的发我一份好啊,正在学习中^_^邮箱[email protected]
      

  4.   

    给我看下吧  我去年做过相似的游戏 看能不能帮忙 [email protected]
      

  5.   

    给我也一份[email protected]
      

  6.   

    也许是你的通信命令发出后,但信息还没有即时发出去,而是存储在缓存中,只有当缓存满后,才能一次性的发出去,如果要每次通信的信息能即时发送出去,就必须自己手动强制发送,使用Socket的OutputStream的flush()就好了。flush():
    Flushes this output stream and forces any buffered output bytes to be written out.这种情况以前我也遇到过,逻辑上没问题,也找不出错来,但就是接收不到信息,就怕这种郁闷问题。
      

  7.   

    多谢楼上Inhibitory()的回答。程序中我也曾经怀疑是这个问题,后来调试的结果 表明问题不是出在这,因为接收端抛出了这样一个异常:StreamCorruptedException 。在网上查找了一下原因,得到的解释是流控制信息不一致,得用output.reset()重新改写对象输出流的控制信息。在测试程序中,能把一部分问题解决,解决的问题是测试程序中的每次改写的内容都能正常发送过去。但在毕业设计的程序里面在每次输出对象流输出对象后,再执行reset()方法,还是出现上面所说的异常。郁闷!!!逻辑上真找不出来错误,可运行起来就是有异常。这中异常是在Socket连接成功,并且第一次发送信息也成功之后才报的。