亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? echoclient.java

?? 孫衛琴《Java網絡編程精解》源代碼
?? JAVA
字號:
package nonblock;
import java.net.*;
import java.nio.channels.*;
import java.nio.*;
import java.io.*;
import java.nio.charset.*;
import java.util.*;

public class EchoClient{
  private SocketChannel socketChannel = null;
  private ByteBuffer sendBuffer=ByteBuffer.allocate(1024);
  private ByteBuffer receiveBuffer=ByteBuffer.allocate(1024);
  private Charset charset=Charset.forName("GBK");
  private Selector selector;

  public EchoClient()throws IOException{
    socketChannel = SocketChannel.open();
    InetAddress ia = InetAddress.getLocalHost();
    InetSocketAddress isa = new InetSocketAddress(ia,8000);
    socketChannel.connect(isa);
    socketChannel.configureBlocking(false);
    System.out.println("與服務器的連接建立成功");
    selector=Selector.open();
  }
  public static void main(String args[])throws IOException{
    final EchoClient client=new EchoClient();
    Thread receiver=new Thread(){
      public void run(){
        client.receiveFromUser();
      }
    };

    receiver.start();
    client.talk();
  }

  public void receiveFromUser(){
    try{
      BufferedReader localReader=new BufferedReader(new InputStreamReader(System.in));
      String msg=null;
      while((msg=localReader.readLine())!=null){
        synchronized(sendBuffer){
            sendBuffer.put(encode(msg + "\r\n"));
         }
        if(msg.equals("bye"))
          break;
      }
    }catch(IOException e){
       e.printStackTrace();
    }
  }

  public void talk()throws IOException {
     socketChannel.register(selector,
                          SelectionKey.OP_READ |
                          SelectionKey.OP_WRITE);
     while (selector.select() > 0 ){
       Set readyKeys = selector.selectedKeys();
       Iterator it = readyKeys.iterator();
       while (it.hasNext()){
         SelectionKey key=null;
         try{
             key = (SelectionKey) it.next();
             it.remove();

             if (key.isReadable()) {
                 receive(key);
             }
             if (key.isWritable()) {
                 send(key);
             }
         }catch(IOException e){
            e.printStackTrace();
            try{
                if(key!=null){
                    key.cancel();
                    key.channel().close();
                }
            }catch(Exception ex){e.printStackTrace();}
         }
      }//#while
    }//#while
  }

  public void send(SelectionKey key)throws IOException{
    SocketChannel socketChannel=(SocketChannel)key.channel();
    synchronized(sendBuffer){
        sendBuffer.flip(); //把極限設為位置
        socketChannel.write(sendBuffer);
        sendBuffer.compact();
     }
  }
  public void receive(SelectionKey key)throws IOException{
    SocketChannel socketChannel=(SocketChannel)key.channel();
    socketChannel.read(receiveBuffer);
    receiveBuffer.flip();
    String receiveData=decode(receiveBuffer);

    if(receiveData.indexOf("\n")==-1)return;

    String outputData=receiveData.substring(0,receiveData.indexOf("\n")+1);
    System.out.print(outputData);
    if(outputData.equals("echo:bye\r\n")){
        key.cancel();
        socketChannel.close();
        System.out.println("關閉與服務器的連接");
        selector.close();
        System.exit(0);
    }

    ByteBuffer temp=encode(outputData);
    receiveBuffer.position(temp.limit());
    receiveBuffer.compact();
  }

  public String decode(ByteBuffer buffer){  //解碼
    CharBuffer charBuffer= charset.decode(buffer);
    return charBuffer.toString();
  }
  public ByteBuffer encode(String str){  //編碼
    return charset.encode(str);
  }
}


/****************************************************
 * 作者:孫衛琴                                     *
 * 來源:<<Java網絡編程精解>>                       *
 * 技術支持網址:www.javathinker.org                *
 ***************************************************/

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美精品一区二区三区高清aⅴ| 成人免费视频播放| ●精品国产综合乱码久久久久 | av激情亚洲男人天堂| 开心九九激情九九欧美日韩精美视频电影 | 色婷婷精品大视频在线蜜桃视频 | 久久久久久一级片| 欧美成人性战久久| 日韩精品中午字幕| 久久久不卡影院| 中文字幕在线不卡| 亚洲精品视频在线观看网站| 亚洲一线二线三线视频| 午夜精品一区二区三区三上悠亚| 三级影片在线观看欧美日韩一区二区 | 伊人性伊人情综合网| 亚洲综合久久久久| 美洲天堂一区二卡三卡四卡视频| 激情小说亚洲一区| 91丨九色丨黑人外教| 欧美日韩电影在线| 久久一留热品黄| 亚洲欧洲色图综合| 三级欧美韩日大片在线看| 麻豆国产精品一区二区三区 | 国产精品久久一级| 亚洲国产精品影院| 久久99这里只有精品| 北条麻妃国产九九精品视频| 欧美系列在线观看| 欧美mv和日韩mv的网站| 亚洲免费高清视频在线| 老色鬼精品视频在线观看播放| 成人国产精品免费观看| 337p亚洲精品色噜噜| www国产亚洲精品久久麻豆| 亚洲三级理论片| 秋霞av亚洲一区二区三| 成人av影视在线观看| 91精品久久久久久久99蜜桃| 中文子幕无线码一区tr| 日日摸夜夜添夜夜添国产精品| 高清shemale亚洲人妖| 欧美三级在线视频| 国产校园另类小说区| 日韩电影一区二区三区| 99视频在线观看一区三区| 欧美xxxx在线观看| 亚洲永久免费视频| voyeur盗摄精品| 精品99999| 五月婷婷另类国产| 91麻豆免费看片| 国产日韩精品一区二区三区| 免费视频最近日韩| 欧美中文字幕久久 | 91免费在线看| 欧美国产精品v| 激情综合五月婷婷| 91麻豆免费视频| 中文字幕不卡在线播放| 激情欧美一区二区| 精品日本一线二线三线不卡| 亚洲va欧美va人人爽| 在线视频你懂得一区| 国产精品素人视频| 国产乱理伦片在线观看夜一区| 日韩一级高清毛片| 日韩黄色在线观看| 8v天堂国产在线一区二区| 亚洲综合一区二区| 欧美伊人久久久久久久久影院| 亚洲色图丝袜美腿| 91麻豆国产福利在线观看| 国产精品久久久久三级| 成人国产精品免费网站| 国产精品沙发午睡系列990531| 狠狠色丁香婷综合久久| 久久九九久精品国产免费直播| 久久精品国产99国产| wwwwxxxxx欧美| 国产精品一区二区黑丝| 国产精品久久久久久久久久免费看 | 美日韩一区二区三区| 欧美一区二区成人6969| 久久66热re国产| 久久久久久久久伊人| 国产永久精品大片wwwapp| 久久精品水蜜桃av综合天堂| 国内精品视频666| 久久久精品人体av艺术| www.欧美精品一二区| 亚洲精品高清视频在线观看| 欧美日韩中字一区| 丝袜亚洲另类欧美综合| 91精品国产91综合久久蜜臀| 精品一区二区在线观看| 国产精品视频麻豆| 欧美三级乱人伦电影| 久久国产日韩欧美精品| 中文在线资源观看网站视频免费不卡 | 久久久影视传媒| 色婷婷综合久久久久中文一区二区| 亚洲国产中文字幕在线视频综合| 欧美日韩久久久久久| 国产精品12区| 亚洲午夜久久久| 26uuu亚洲综合色| 91国模大尺度私拍在线视频| 蜜臀久久久久久久| 国产欧美日韩综合精品一区二区 | 欧美日韩国产精品自在自线| 国产乱码精品一区二区三区av| 亚洲精品免费电影| 精品免费视频一区二区| 在线中文字幕不卡| 国产激情一区二区三区| 日日嗨av一区二区三区四区| 国产欧美久久久精品影院| 欧美日本高清视频在线观看| 粉嫩aⅴ一区二区三区四区五区 | 日韩一区二区高清| 色综合天天综合| 国产福利精品导航| 天堂久久一区二区三区| 中文字幕五月欧美| 久久综合九色欧美综合狠狠| 欧美性受xxxx黑人xyx| 国产91在线观看| 卡一卡二国产精品| 亚洲一二三四久久| 综合久久综合久久| 日本一区二区高清| 亚洲精品在线免费播放| 6080亚洲精品一区二区| 日本精品裸体写真集在线观看 | 欧美性高清videossexo| 成人av在线观| 国产91精品在线观看| 激情另类小说区图片区视频区| 午夜视频在线观看一区二区三区| 成人欧美一区二区三区白人| 中文字幕欧美国产| www国产成人| 国产亚洲欧美中文| 国产亚洲福利社区一区| 亚洲精品在线网站| 久久蜜桃香蕉精品一区二区三区| 日韩三级视频在线看| 91麻豆精品国产91| 欧美日韩国产a| 欧美精品在线一区二区三区| 欧美亚洲高清一区二区三区不卡| 91国产免费观看| 欧美三区免费完整视频在线观看| 色婷婷av一区二区三区软件| 91成人在线免费观看| 精品视频一区三区九区| 欧美性感一类影片在线播放| 欧美嫩在线观看| 4438x亚洲最大成人网| 精品久久一区二区三区| 亚洲精品一区二区三区在线观看| 精品久久一二三区| 国产清纯美女被跳蛋高潮一区二区久久w | 欧美一级专区免费大片| 亚洲精品一区二区三区福利| 欧美xxxxx牲另类人与| 国产精品素人一区二区| 一区二区三区四区不卡在线| 亚洲国产综合色| 国产一区在线不卡| 92精品国产成人观看免费| 欧美日韩一区小说| 日韩久久久久久| 国产精品的网站| 亚洲高清不卡在线| 国产精品一区免费在线观看| 91小视频免费观看| 欧美综合一区二区| 精品乱人伦小说| 亚洲视频 欧洲视频| 免费一级欧美片在线观看| 国产.精品.日韩.另类.中文.在线.播放| 91在线免费播放| 欧美一区二区三区精品| 国产精品进线69影院| 亚洲国产成人高清精品| 国产一区二区成人久久免费影院 | 777久久久精品| 中文字幕精品一区二区精品绿巨人 | 99国产精品久| 日韩欧美亚洲国产精品字幕久久久 | 成人久久18免费网站麻豆| 欧美人xxxx| 自拍av一区二区三区| 精品一区二区三区在线观看| 一本久久精品一区二区| 久久精品视频在线免费观看| 午夜精品视频一区|