客户端程序没写出,问题是Factory o = new Factory(is.readUTF());这条语句并没有读出对向,请问怎么解决

解决方案 »

  1.   

    如果你需要通过Socket传输(可序列化的)对象,可以考虑使用下面的方法啊:
    // 定义一个两端都能够"认识"的数据封装对象
    class SocketMsgInfo implements Serializable{
        Date dDate = null;
        String strMsg = null;
         // .....
    }// Server side ,接受客户端发送过来的对象
    ServerSocket srvSkt = null;
    srvSkt = new ServerSocket(3310);
    Socket cltSkt = srvSkt.accept();
    ObjectInputStream ois = new ObjectInputStream(cltSkt.getInputStream());
    Object o = ois.readObject();
    if(o != null){
        System.out.println(((SocketMsgInfo)o).strMsg);
        // ...
    }// Client side,发送对象
    Socket skt = new Socket("xx.xxx.xxx.xxx", 3310);
    ObjectOutputStream oos = new ObjectOutputStream(skt.getOutputStream());
    oos.writeObject(new SocketMsgInfo(...));Now try it ...JerKii
      

  2.   

    如果你需要通过Socket传输(可序列化的)对象,可以考虑使用下面的方法啊:
    // 定义一个两端都能够"认识"的数据封装对象
    class SocketMsgInfo implements Serializable{
    Date dDate = null;
    String strMsg = null;
    // .....
    }// Server side ,接受客户端发送过来的对象
    ServerSocket srvSkt = null;
    srvSkt = new ServerSocket(3310);
    Socket cltSkt = srvSkt.accept();
    ObjectInputStream ois = new ObjectInputStream(cltSkt.getInputStream());
    Object o = ois.readObject();
    if(o != null){
    System.out.println(((SocketMsgInfo)o).strMsg);
    // ...
    }// Client side,发送对象
    Socket skt = new Socket("xx.xxx.xxx.xxx", 3310);
    ObjectOutputStream oos = new ObjectOutputStream(skt.getOutputStream());
    oos.writeObject(new SocketMsgInfo(...));Now try it ...JerKii