现在的情况是这样的:
服务器端是MFC写的,不可更改。客户端用Java开发。
由于通信的信息都是由一个个基础数据类型(int,double,boolean等)组成的buffer,因此,客户端的socket输入输出流选择的是DataInputStream,DataOutputStream。问题是,服务器端收到的buffer长度正确,但是buffer是空的。还请各位指教,为什么会出现这种情况?问题出在什么地方?还有,应该怎么做?

解决方案 »

  1.   

    好深奥没做过
    感觉要通信的话,至少接口之间要整合起来吧...
    buffer长度正确,但是buffer是空的 ... 呵呵,看到长度却得不到值有问题up
      

  2.   

    我忘了说了,协议什么的都没问题,因为我用java模拟了一个服务器端,测试是没有问题的。
      

  3.   

    我知道问题在哪里了,java和MFC中基础数据的高低位设置不一样,比如int 12,java中是00 00 00 0C,MFC中是0C 00 00 00。
    现在MFC的服务器端不能动,请问java端有什么好的解决措施?
      

  4.   


    能说得具体点吗?
    我在网上搜了,但是没有找到java下的方便的解决方法。总不能一个字节一个字节地重组数据吧
      

  5.   

    参考 DataOutputStream及DataInputStream的代码,写一个和MFC一致的DataInput/Output接口实现