我用indy的tcp组件做了一个服务器,和一个客户端,这两个通信正常.
但用java开发的客户端(基于socket),与这个服务器只能建立连接,
服务器向java客户端发信息,java客户端收无反映.用java客户端发信息,服务器也无反映.
但用网络监视程序监控,确实用信息在发过去了.用没有做这方面的大师呀?给指点指点吧.谢谢.

解决方案 »

  1.   

    会不会是字节序的问题
    也就是说, 0x01 0x00 0x00 0x00 如果表示一个整数, 在Delph 中表示的是整数 0x00000001
    如果没有进行字节序的转换, 那在Java中表示的是整数 0x01000000 , 差别很大当然, 这只会对于你自己设计的应用层协议部分的数据类型有问题
    对于TCP, UDP, IP 这些网络层和传输层协议, 其字节序是事先规定好的, 正确的实现会考虑这些问题
      

  2.   

    问题已经解决了,是由于使用了java使用了readUTF(),而delphi发送信息却没有使用utf编码.