VC++ 程序与Java程序用socket方式通信,用的是TCP方式。为什么VC++程序在创建Socket,与Java程序建立连接之后,VC程序发送的字符串java 程序接收不到,只有在VC程序调用socket的close函数之后,Java 程序才能接收到vc程序,以前发送出去的消息。而且,把vc程序发送几条消息,当作一条消息接收的。这是怎么回事?

解决方案 »

  1.   

    是不是设置缓冲区了?没有填充满。或者java用于接收的类使用的不对?检查代码看看
      

  2.   

    这可能是哪边的问题呀?java 之间通信没有问题,java发送给vc的,vc也能够接收的到。
    java里,用的是readline 函数读取数据的,感觉像是它认为数据没有发送完,一直在等待结束。
      

  3.   

    用read(byte)来读,readline有缓冲,VC那边也要用byte写数据
      

  4.   

    那怎么byte还原成 string ?
    还有,就是DataInputStream 的read函数呀?