首页   |   IT资讯   |   综合资讯   |   开发   |   软件   |   问答   |   网络技术   |   网络综合
更多:
当前位置:首页 » 手机数码
文章正文

800分求一程序

类型:转载   责任编辑:asp   日期:2007/03/01

    

是server和client的socket通信问题,我没有调试   同过,谁调同了   给800分  
  //server  
  import   java.io.*;  
  import   java.net.*;  
  import   java.awt.*;  
  import   java.awt.event.*;  
  public   class   mysocketserver  
  {  
  public   static   void   main(string[]   args)  
  {  
  serverservice   myserver   =     new   serverservice(8000,10);  
          }  
  }  
  class   servicethread   extends   frame   implements   runnable  
  {  
  serverservice   fatherlistener;  
  socket   connectedclient;  
  thread   connectthread;  
  panel   listenerpanel;  
  textarea   servermeg;  
  public   servicethread(serverservice   sv,socket   s)  
          {  
                  fatherlistener   =   sv;  
                  connectedclient   =   s;  
                  connectthread   =   new   thread(this);  
                  settitle("answer   client");  
                  setlayout(new   borderlayout());  
                  servermeg   =   new   textarea(10,50);  
                  add("center",servermeg);  
                  setresizable(false);  
                  pack();  
                  show();  
                  inetaddress   clientaddress   =   connectedclient.getinetaddress();  
                  servermeg.appendtext("client   connected"   +   "form\n"   +   clientaddress.tostring()   +".\n");  
          }  
          public   void   run()  
          {  
          try  
          {  
          datainputstream   in   =   new   datainputstream(new   bufferedinputstream(connectedclient.getinputstream()));  
          printstream   out   =   new   printstream(new     bufferedoutputstream(connectedclient.getoutputstream()));  
          out.println("hello!wellcome   connent   to   our   server!   \r");  
          out.flush();  
          string   s   =   in.readline();  
          while   (!   s.equals("bye"))  
          {  
          servermeg.appendtext("clientêäèëðåï¢îª:\n"+   s);  
          s   =   in.readline();  
          }  
          connectedclient.close();  
          }  
          catch(exception   e){}  
          fatherlistener.addmeg("client"   +   "closed"   +   "\n");  
          dispose();  
          }  
  }  
  class   serverservice   extends   frame  
  {  
  serversocket   m_slistener;  
  textarea   listenermeg;  
  public   serverservice(int   port,int   count)  
  {  
  try  
  {  
  m_slistener   =   new   serversocket(port,count);  
  settitle("server   listener");  
  this.addwindowlistener(new   winadpt());  
                          setlayout(new   borderlayout());  
                          add("center",listenermeg);  
                          setresizable(false);  
                          pack();  
                          show();  
                          while(true)  
                          {  
                          socket   connected   =   m_slistener.accept();  
                          inetaddress   clientaddress   =   connected.getinetaddress();  
                          listenermeg.appendtext("client"     +   "connected"   +   "form   \n"   +   clientaddress.tostring()   +   ".\n");  
                          servicethread   myst   =   new   servicethread(this,connected);  
                          myst.connectthread.start();  
                          }  
                  }  
                  catch(ioexception   e){}  
          }  
          public   void   addmeg(string   s)  
          {  
          listenermeg.appendtext(s);  
          }  
  }  
  class   winadpt   extends   windowadapter  
  {  
  public   void   windowclosing(windowevent   e)  
  {  
  ((frame)e.getwindow()).dispose();  
  system.exit(0);  
  }  
  }  
  *************************************************************  
  //client  
  import   java.awt.*;  
  import   java.awt.event.*;  
  import   java.net.*;  
  import   java.io.*;  
  public   class   myclient   extends   frame   implements   actionlistener  
  {  
  socket   clientsocket;  
  printstream   os;  
  datainputstream   is;  
  string   s;  
  label   mylabel   =   new   label("welcome");  
  textarea   textarea;  
  button   mybutton   =   new   button("send");  
  public   myclient()  
  {  
  settitle("client   window");  
  setlayout(new   borderlayout());  
  this.addwindowlistener(new   winadptclient(this));  
  mybutton.addactionlistener(this);  
  textarea   =   new   textarea(29,50);  
  add("north",mylabel);  
                  add("south",mybutton);  
                  add("client",textarea);  
                  setresizable(false);  
                  pack();  
                  show();  
                  connect();  
          }  
          public   void   connect()  
          {  
          try  
          {  
          clientsocket   =   new   socket("qq",8000);  
          os   =   new   printstream(new   bufferedoutputstream(clientsocket.getoutputstream()));  
          is   =   new   datainputstream(new   bufferedinputstream(clientsocket.getinputstream()));  
          s   =   is.readline();  
          textarea.appendtext(s+"\n");  
          }  
          catch(exception   e){}  
          }  
          public   void   actionperformed(actionevent   e)  
          {  
          if(e.getsource()==mybutton)  
          {  
          //try  
          {  
          os.print(textarea.gettext());  
          os.flush();  
          }  
          // catch(exception   e){}  
          }  
          }  
          public   static   void   main(string   args[])  
          {  
          new   myclient();  
          }  
          class   winadptclient   extends   windowadapter  
          {  
          myclient   m_parent;  
          winadptclient(myclient   p)  
          {  
          m_parent   =   p;  
          }  
          public   void   windowclosing(windowevent   e)  
          {  
          try  
          {  
          m_parent.os.println("bye");  
          m_parent.os.flush();  
          m_parent.is.close();  
          m_parent.os.close();  
          m_parent.clientsocket.close();  
          m_parent.dispose();  
          system.exit(0);  
          }  
          catch(exception   ex){}  
          }  
          }  
  }  
   
   
  ************************************  
  谢谢各位了  
 

推荐阅读

  • 计算器功能秀——换算宝典 [详细内容]
  • A800与A800+对比和A800+缺点 [详细内容]
  • 海尔海信共推 嵌入打印机功能的电视 [详细内容]
  • 波波汽车伴侣 爱国者车载MP3新年上市 [详细内容]
  • 曝光欺诈内幕 计算器装遥控器一年多赚十几万 [详细内容]
  • 深拓数码产业链 爱国者嵌入式系统研究院成立 [详细内容]
  • 穷人的绝佳选择 二月高性价比笔记本推荐 [详细内容]
  • 网友回答:
    网友:hodex

    1.mysocketserver中servicethread   类textarea   listenermeg=new   textarea();  
      2.myclient   中add("client",textarea);改为add(textarea);  
      3.clientsocket   =   new   socket("qq",8000);   qq换成你的ip或你的主机名  
       
      以上在俺机子上运行通过

    网友:yujiabian

    mysocketserver中servicethread   类textarea   listenermeg=new   textarea();  
      myclient   中add("client",textarea);改为add(textarea);  
      clientsocket   =   new   socket("qq",8000);   qq换成你的ip或你的主机名  
     

    网友:feiyuegaoshan

    //server  
      import   java.io.*;  
      import   java.net.*;  
      import   java.awt.*;  
      import   java.awt.event.*;  
      public   class   mysocketserver  
      {  
              public   static   void   main(string[]   args)  
              {  
                      serverservice   myserver   =     new   serverservice(8000,10);  
              }  
      }  
      class   servicethread   extends   frame   implements   runnable  
      {  
              serverservice   fatherlistener;  
              socket   connectedclient;  
              thread   connectthread;  
              panel   listenerpanel;  
              textarea   servermeg;  
              public   servicethread(serverservice   sv,socket   s)  
              {  
                      fatherlistener   =   sv;  
                      connectedclient   =   s;  
                      connectthread   =   new   thread(this);  
                      settitle("fabiao   client");  
                      setlayout(new   borderlayout());  
                      servermeg   =   new   textarea(10,50);  
                      add("center",servermeg);  
                      setresizable(false);  
                      pack();  
                      show();  
                      inetaddress   clientaddress   =   connectedclient.getinetaddress();  
                      servermeg.appendtext("client   connected"   +   "form\n"   +   clientaddress.tostring()   +".\n");  
              }  
              public   void   run()  
              {  
                      try  
                      {  
                              datainputstream   in   =   new   datainputstream(new   bufferedinputstream(connectedclient.getinputstream()));  
                              printstream   out   =   new   printstream(new     bufferedoutputstream(connectedclient.getoutputstream()));  
                              out.println("hello!wellcome   connent   to   our   server!   \r");  
                              out.flush();  
                              string   s   =   in.readline();  
                              while   (!   s.equals("bye"))  
                              {  
                                      servermeg.appendtext("clientêäèëðåï¢îª:\n"+   s);  
                                      s   =   in.readline();  
                              }  
                              connectedclient.close();  
                      }  
                      catch(exception   e){}  
                      fatherlistener.addmeg("client"   +   "closed"   +   "\n");  
                      dispose();  
              }  
      }  
      class   serverservice   extends   frame  
      {  
              serversocket   m_slistener;  
              textarea   listenermeg   =   new   textarea();;  
              public   serverservice(int   port,int   count)  
              {  
                      try  
                      {  
                              m_slistener   =   new   serversocket(port,count);  
                              settitle("server   listener");  
                              this.addwindowlistener(new   winadpt());  
                              setlayout(new   borderlayout());  
                              add("center",listenermeg);  
                              setresizable(false);  
                              pack();  
                              show();  
                              while(true)  
                              {  
                                      socket   connected   =   m_slistener.accept();  
                                      inetaddress   clientaddress   =   connected.getinetaddress();  
                                      listenermeg.appendtext("client"     +   "connected"   +   "form   \n"   +   clientaddress.tostring()   +   ".\n");  
                                      servicethread   myst   =   new   servicethread(this,connected);  
                                      myst.connectthread.start();  
                              }  
                      }  
                      catch(ioexception   e){}  
              }  
              public   void   addmeg(string   s)  
              {  
                      listenermeg.appendtext(s);  
              }  
      }  
      class   winadpt   extends   windowadapter  
      {  
              public   void   windowclosing(windowevent   e)  
              {  
                      ((frame)e.getwindow()).dispose();  
                      system.exit(0);  
              }  
      }  
     

    网友:zealvampire

    老兄速度好快呢   555555   我刚刚找到想说打上去.....:<  
      这个程序还好的   但是  
      我还是喜欢 os   =   new   printwriter   (clientsocket.getoutputstream());  
              is   =   new   bufferedreader(new   inputstreamreader(clientsocket.getinputstream()));

    .
      最佳浏览:1024X768 MSIE
    ©2007 jqmk.com.cn All Rights Reserved