亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

用Java實現的一個C/S完整聊天程序

2019-11-18 13:15:39
字體:
來源:轉載
供稿:網友

  以下程序在jdk1.4.1中調試通過;
  OS : Windows xp
  本程序有一個空發消息的處理問題,希望大家多多指教!
  mainto:yzmhacke.163.com
  
  客戶端的程序:
  
  //Client.java
  import java.io.*;
  import java.net.*;
  import java.awt.*;
  import java.awt.event.*;
  
   public  class  Client extends Frame implements
   ActionListener,Runnable{
     
     PRivate TextField tf1,tf2;
     private Label la1,la2;
     private TextArea ta1,ta2;
     private Socket s;
     private Button b,l;
     private BufferedReader br=null;
     private PrintWriter pw=null;
       // static String  port,ip;
     public static void  main(String arg[]) {
       new Client();
     //if(arg[0].length()!=0) ip=arg[0];
      //if(arg[1].length()!=0) port=arg[1];
       }
     
     //完成構造函數的說明
     public Client(){
       //完成ip地址與端口的建立
       setLayout(new GridLayout(6,1));
       Panel panel=new Panel();   
       tf1=new TextField(20);
       tf2=new TextField(10);
       la1=new Label("IP地址 ");
       
       la2=new Label("對應端口  ");
       Button l=new Button("連接");
       l.setBackground(Color.green);
       //l.addActionListener(this);
       panel.add(la1);
       panel.add(tf1);
       panel.add(la2);
       panel.add(tf2);
       panel.add(l);
       add(panel);
      
      //輸入框與顯示框
      
       ta1=new TextArea(100,300);
      
       add(new Label("消息框"));
      
       add(ta1);
       add(new Label("用戶輸入框"));
       ta2=new TextArea(30,300);     
       
        add(ta2);
       Panel p2=new Panel();
       b=new Button("發送");
       b.setBackground(Color.yellow);
       p2.add(b);
       add(p2);
       setTitle("客戶端");
       setSize(300,450);
       setResizable(false);
       setVisible(true);
       //捕捉各種的異常
       l.addActionListener(this); 
     //  b.addActionListener(this);
       //增加了一個關閉的事件
       addWindowListener(new WindowAdapter(){
         
       public void windowClosing(WindowEvent exit){ System.exit(0);}});
       Thread  ThreadReader=new Thread(this);
       
       ThreadReader.start();
       
      b.addActionListener(this);      
      
       
   }
       
   public void run(){
            while(true){
          try{
            ta1.append("/n #_____________________________#/n"+br.readLine());
         }catch(Exception exo){}
         }  
     }
     
      //客戶向服務端發送消息??!
    
  
  
   public void actionPerformed(ActionEvent e)
    {  String command=e.getActionCommand();
      
      if("發送".equals(command))
       { 
        if(ta2.getText().trim()!=null)
         { 
          ta1.append("/n 客戶端的消息:/n"+ta2.getText());
          pw.println(ta2.getText()+"/n");//" /n  客戶短信: /n "
          } 
        else
            if(ta2.getText().trim()==null)
        { ta1.append("請輸入完整的IP地址與端口以及、/n"+"不能空發消息");} 
            
      
            ta2.setText(" "); //結束的時候清空文本框
       }
     else
      if("連接".equals(command)){
          
      try
        {
        
        //借助連接的按鈕完成遠程pc的連接的工作。建立輸入與輸出流兩個工具
       s=new Socket(tf1.getText().toString(),Integer.parseInt((tf2.getText()).trim()));
       //Integer.parseInt((tf2.getText()).trim())
       br=new BufferedReader(new InputStreamReader(s.getInputStream()));
       pw=new PrintWriter(s.getOutputStream(),true);
       //ta1.append("/n 服務端來消息:/n"+br.readLine());
       }
       catch(Exception ex){
         //ta1.append("產生了輸入輸出異常無法完成交互!");
         }
        
       }     
          
      } 
                
    
   } 
  
  
  /*******************服務端的程序*************************/
  //Server.java
  package server;
  import java.io.*;
  import java.awt.*;
  import java.net.*;
  import java.awt.event.*;
  
  public class Server{
    public static void main(String arg[]){
       ServerService MyServer=new ServerService(8000,10);  
      
    }
   }
   //交互端的服務窗口  
   class ServiceThread extends Frame
   implements ActionListener,Runnable{
       ServerService FatherListener;
       Socket ConnectedClient;
      Thread  ConnectedThread;
      Panel  ListenePanel;
      TextArea  ServerMeg;
      TextArea ServerWrite;
      Label la; 
      Button BT;
      BufferedReader in;
      PrintWriter out;  
     public ServiceThread(ServerService sv,Socket s){
            //容器與格子組建的結合
            
             FatherListener=sv;
             ConnectedClient=s;
             ConnectedThread =new Thread(this);
             //采用線程的目的是利用他的并發機制,實現多個任務
            
             //在當前的類中(this)通過Runnabel()接口實現Thread()的Run()方案
            
            
             setTitle("Answer Client");
             setLayout(new GridLayout(4,1));
             //采用格子組建的形式完成組建的安排
            
             ServerMeg=new TextArea(null,5,45,TextArea.SCROLLBARS_VERTICAL_ONLY);
             //添加各種組建到容器當中
             ListenePanel=new Panel();
             ListenePanel.add(ServerMeg);
             add(ListenePanel);
             addWindowListener(new WindowAdapter(){
               public void windowClosing(WindowEvent e){
                //((Frame)e.getWindow()).dispose();//保留的語句
                 System.exit(0);
                 }});
             //第二個Panel()
            
            la=new Label("服務端消息輸入框...............");
            add(la);
            ServerWrite=new TextArea(10,50);
            add(ServerWrite);
             //add(p2);
             setSize(355,360);
            
             Panel p3=new Panel();
            
             bt=new Button("傳送");
             bt.addActionListener(this);
             p3.add(bt);
             add(p3);
           
             setResizable(false);

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
日韩欧美在线观看视频| 欧美在线视频观看| 成人欧美一区二区三区黑人孕妇| 大量国产精品视频| 日韩精品在线免费播放| 伊人久久久久久久久久久| 中文字幕日韩av| 亚洲精品一区二区在线| 日韩大片在线观看视频| 欧美一区二粉嫩精品国产一线天| 亚洲色图日韩av| 亚洲午夜女主播在线直播| 超碰97人人做人人爱少妇| 国产精品av免费在线观看| 91精品国产乱码久久久久久久久| 欧美日韩免费一区| 亚洲第一综合天堂另类专| 精品久久久久久久久久| 中文字幕亚洲一区二区三区五十路| 国产精品久久久久久久久久久久久| 国产欧美在线视频| 91视频国产一区| 国产精品18久久久久久麻辣| 在线视频欧美日韩精品| 亚洲欧美日韩天堂一区二区| 色噜噜狠狠狠综合曰曰曰88av| 日韩中文字幕免费看| 国产v综合ⅴ日韩v欧美大片| 国产成人+综合亚洲+天堂| 欧美寡妇偷汉性猛交| 2019最新中文字幕| 在线免费看av不卡| 久久久久久这里只有精品| 亚洲午夜女主播在线直播| 亚洲精品美女在线观看播放| 亚洲精品国产品国语在线| 久久精品国产成人精品| 国产一区玩具在线观看| 美女撒尿一区二区三区| 亚洲精品一区二区网址| 欧美亚洲国产日本| 亚洲欧美精品在线| 亚洲free性xxxx护士hd| 在线视频欧美日韩| 91国产精品视频在线| 国产香蕉一区二区三区在线视频| 久久久久这里只有精品| 国产亚洲精品日韩| 久久久久久中文| 97视频人免费观看| 最新日韩中文字幕| 奇米影视亚洲狠狠色| 亚洲男人7777| 欧美性猛交xxxx富婆弯腰| 欧美另类极品videosbestfree| 日韩在线观看你懂的| 国产亚洲欧美视频| 国产精品激情av电影在线观看| 国产欧美在线观看| 91av在线播放视频| 久久久久九九九九| 日韩在线视频中文字幕| 精品国产欧美一区二区五十路| 亚洲丁香久久久| 日韩av在线看| 国产精品色悠悠| 日韩成人中文字幕| 91福利视频网| 精品中文字幕久久久久久| 久久精品欧美视频| 欧美激情中文网| 亚洲欧美国产另类| 国产精品欧美日韩一区二区| 国产91免费观看| 国产精品99久久久久久人| 欧美视频在线视频| 美日韩丰满少妇在线观看| 欧美激情精品久久久久久蜜臀| 亚洲免费视频在线观看| 69久久夜色精品国产69乱青草| 日韩中文有码在线视频| 国产精品美女久久久久久免费| 亚洲免费av网址| 欧美日韩免费在线| 91豆花精品一区| 久久亚洲精品中文字幕冲田杏梨| 亚洲第一区第二区| 国产精品va在线播放| 亚洲最新在线视频| 国产精品天天狠天天看| 清纯唯美日韩制服另类| 国产精品成久久久久三级| 欧美日本中文字幕| 欧美精品日韩三级| 欧美日韩一区二区三区在线免费观看| 中文字幕日韩综合av| 欧美视频一区二区三区…| 激情亚洲一区二区三区四区| 日韩欧美成人精品| 久久人人爽人人爽人人片av高清| 日韩视频免费在线观看| 国产精品成人av性教育| 播播国产欧美激情| 国产日韩欧美夫妻视频在线观看| 北条麻妃一区二区在线观看| 亚洲aⅴ日韩av电影在线观看| 亚洲美女动态图120秒| 久久精品色欧美aⅴ一区二区| 欧美激情乱人伦| 久久99视频免费| 欧美在线激情视频| 久久精品99久久久香蕉| 97精品国产97久久久久久春色| 国产www精品| 日韩在线视频观看| 成人黄在线观看| 亚洲图片在线综合| 欧美大尺度在线观看| 91热福利电影| xxx一区二区| 国产精品精品一区二区三区午夜版| 成人久久精品视频| 91超碰caoporn97人人| xxxxx成人.com| 亚洲第一精品福利| 成人欧美一区二区三区在线| 午夜精品99久久免费| 亚洲新中文字幕| 欧美人与物videos| 亚洲一区二区三区777| 在线观看精品国产视频| 国产亚洲成精品久久| 欧美丰满老妇厨房牲生活| 久久久久国色av免费观看性色| 久久97精品久久久久久久不卡| 亚洲小视频在线观看| 亚洲精品美女免费| 亚洲专区国产精品| 国产美女久久精品| 日韩av免费在线播放| 91久久国产婷婷一区二区| 国产精品成人一区二区| 亚洲欧美三级伦理| 亚洲日韩第一页| 亚洲已满18点击进入在线看片| 韩国精品美女www爽爽爽视频| 久久久久久九九九| 亚洲国产精品va在线看黑人动漫| 国产精品久久一区| 国产视频自拍一区| 国产精品99一区| 亚洲人成在线观| 国产极品精品在线观看| 国产午夜一区二区| 九九热视频这里只有精品| 91禁外国网站| 午夜精品www| 91国内揄拍国内精品对白| 亚洲综合小说区| 亚洲第一男人天堂| 一区二区欧美日韩视频| 91影院在线免费观看视频| 久久久成人av| 成人免费观看网址|