再次重申:
1、不要用PrintWriter,在网络传输上,它可能会有问题。
2、我还想问一下:你需求是否只和服务器交互一次就退出?
3、调试网络程序,不知到实际情况,很难说哪里出问题,但现在你应该做如下测试:
   (1)、确信你的java已经向服务端发出正确的信息(服务端能正确解码)。
   (2)、确信服务端的确在1分钟内处理完毕,并发出信息到你的java程序。
   (3)、网络读不一定一次能读到全部的字符,你这样第二次读的时候会将第一次读的冲掉,换个读方法,能指定保存位置的。

解决方案 »

  1.   

    to qqbz(qqbz) :多谢
    1、我用PrintWriter写过去的数据,对方接收正确。。
    2、不是交互一次就推出。是多次请求-响应。
    3、银行方认为其程序不会有问题,对方的程序已经应用到多家公司。
      

  2.   

    lbdl(dreamweaver),byte[] buffer=new byte[220];        in.read(buffer);这样当然只能读到220位。while(true){接收完成后break;}就成了。
      

  3.   

    用Writer是正确的,因为Stream处理的的是byte,Reader,Writer处理的是char.应该是读取的方式有问题.