| ²é¿´: 829 | »Ø¸´: 4 | ||
×Óľ‚Üгæ (³õÈëÎÄ̳)
|
[ÇóÖú]
socketͨÐÅ ÒÑÓÐ1È˲ÎÓë
|
|
ÇëÎÊÓÐËÓÐÒ»¸ö¼ò°æµÄjava socketͨÐųÌÐòÂð£¿ÄÜÓÃenter¼ü·¢ËÍÏûÏ¢£¬ÏÔʾʱ¼ä£¬Ñ¡È¡ÎļþÕâЩ»ù´¡¹¦ÄÜ£¬Ð»Ð»ÁË ·¢×ÔСľ³æAndroid¿Í»§¶Ë |
» ²ÂÄãϲ»¶
Ò»Ö¾Ô¸Ìì´ó²ÄÁÏÓ뻯¹¤£¨085600£©×Ü·Ö338
ÒѾÓÐ4È˻ظ´
085700×ÊÔ´Óë»·¾³308Çóµ÷¼Á
ÒѾÓÐ3È˻ظ´
Çó²ÄÁϵ÷¼Á
ÒѾÓÐ8È˻ظ´
294Çóµ÷¼Á²ÄÁÏÓ뻯¹¤×¨Ë¶
ÒѾÓÐ5È˻ظ´
Ò»Ö¾Ô¸»ªÖпƼ¼´óѧ£¬080502£¬354·ÖÇóµ÷¼Á
ÒѾÓÐ4È˻ظ´
Ò»Ö¾Ô¸¼ªÁÖ´óѧ²ÄÁÏѧ˶321Çóµ÷¼Á
ÒѾÓÐ6È˻ظ´
085410È˹¤ÖÇÄÜר˶317Çóµ÷¼Á£¨0854¶¼¿ÉÒÔ£©
ÒѾÓÐ3È˻ظ´
330Çóµ÷¼Á
ÒѾÓÐ3È˻ظ´
Ò»Ö¾Ô¸Öк£Ñó²ÄÁϹ¤³Ìר˶330·ÖÇóµ÷¼Á
ÒѾÓÐ5È˻ظ´
304Çóµ÷¼Á
ÒѾÓÐ5È˻ظ´
×Óľ‚Ü
гæ (³õÈëÎÄ̳)
- Ó¦Öú: 0 (Ó×¶ùÔ°)
- ½ð±Ò: 83
- Ìû×Ó: 3
- ÔÚÏß: 11·ÖÖÓ
- ³æºÅ: 7616242
- ×¢²á: 2017-12-13
- ÐÔ±ð: GG
- רҵ: ÐÅÏ¢ÀíÂÛÓëÐÅϢϵͳ
|
ÇëÎÊÓÐÒ»¸ö¼ò°æµÄjava??socketͨÐųÌÐòÂð£¿ÄÜÓÃenter¼ü·¢ËÍÏûÏ¢£¬ÏÔʾʱ¼ä£¬Ñ¡È¡ÎļþÕâЩ»ù´¡¹¦ÄÜ£¬Ð»Ð»ÁË ·¢×ÔСľ³æAndroid¿Í»§¶Ë |
2Â¥2017-12-29 11:30:12
ǰ¿Çµµ°¸
ľ³æ (СÓÐÃûÆø)
- Ó¦Öú: 5 (Ó×¶ùÔ°)
- ½ð±Ò: 2433.1
- ºì»¨: 3
- Ìû×Ó: 229
- ÔÚÏß: 36.4Сʱ
- ³æºÅ: 2594487
- ×¢²á: 2013-08-13
- ÐÔ±ð: GG
- רҵ: ²¡¶¾Ñ§
¡¾´ð°¸¡¿Ó¦Öú»ØÌû
|
package chat; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.net.Socket; import java.net.UnknownHostException; import java.util.Scanner; /** * ÁÄÌìÊÒ¿Í»§¶Ë * @author adminitartor * */ public class Client { /* * java.net.Socket * ·â×°ÁËTCPͨѶÐÒ飬ʹÓÃËüÓëÔ¶³Ì¼ÆËã»ú½øÐÐ * ÍøÂçͨѶ¡£ */ private Socket socket; /** * ¹¹Ôì·½·¨£¬ÓÃÀ´³õʼ»¯¿Í»§¶Ë * @throws IOException * @throws UnknownHostException */ public Client() throws UnknownHostException, IOException{ /* * ʵÀý»¯SocketÊÇÐèÒª´«ÈëÁ½¸ö²ÎÊý * 1:·þÎñ¶ËipµØÖ· * 2:·þÎñ¶Ë¶Ë¿Ú * ͨ¹ýIPµØÖ·¿ÉÒÔÕÒµ½ÍøÂçÉϵķþÎñ¶ËËùÔڵļÆËã»ú * ͨ¹ý¶Ë¿Ú¿ÉÒÔÁ¬½Óµ½¸Ã¼ÆËã»úÉϵķþÎñ¶ËÓ¦ÓóÌÐò * * ʵÀý»¯SocketµÄ¹ý³Ì¾ÍÊǽ¨Á¢Á¬½ÓµÄ¹ý³Ì£¬ËùÒÔÈô * Á¬½Ó·þÎñ¶Ëʧ°Ü£¬ÕâÀï»áÅ׳öÒì³£¡£ */ System.out.println("ÕýÔÚÓë·þÎñ¶Ë½¨Á¢Á¬½Ó..." ;socket = new Socket("localhost",8088); System.out.println("Óë·þÎñ¶ËÁ¬½Ó³É¹¦!" ;} /** * ¿Í»§¶ËµÄÆô¶¯·½·¨£¬´ÓÕâÀ↑ʼִÐпͻ§¶ËÂß¼ */ public void start(){ try { Scanner scanner = new Scanner(System.in); OutputStream out = socket.getOutputStream(); OutputStreamWriter osw = new OutputStreamWriter(out,"UTF-8" ;PrintWriter pw = new PrintWriter(osw,true); //Æô¶¯¶ÁÈ¡·þÎñ¶Ë·¢Ë͹ýÀ´ÏûÏ¢µÄÏß³Ì ServerHandler handler = new ServerHandler(); Thread t = new Thread(handler); t.start(); String line = null; System.out.println("¿ªÊ¼ÁÄÌì°É!" ;//Éϴη¢ËͺóµÄʱ¼ä long lasttime = System.currentTimeMillis(); while(true){ line = scanner.nextLine(); long curr = System.currentTimeMillis(); //±¾´Î·¢ËÍʱ¼äÓëÉϴη¢ËÍʱ¼äÒª¼ä¸ô1ÃëÒÔÉÏ if(curr-lasttime>1000){ pw.println(line); lasttime = curr; }else{ System.out.println("˵»°ËÙ¶ÈÌ«¿ì!" ;} } } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { try { Client client = new Client(); client.start(); } catch (Exception e) { e.printStackTrace(); System.out.println("¿Í»§¶ËÆô¶¯Ê§°Ü!" ;} } /** * ¸ÃÏß³ÌÓÃÀ´Ñ»·½ÓÊÕ·þÎñ¶Ë·¢Ë͹ýÀ´µÄÏûÏ¢²¢Êä³öµ½ * ¿Í»§¶Ë×Ô¼ºµÄ¿ØÖÆÌ¨ÉÏ * @author adminitartor * */ private class ServerHandler implements Runnable{ public void run(){ try { InputStream in = socket.getInputStream(); InputStreamReader isr = new InputStreamReader(in,"UTF-8" ;BufferedReader br = new BufferedReader(isr); String message = null; while((message = br.readLine())!=null){ System.out.println(message); } } catch (Exception e) { } } } } |

3Â¥2018-01-12 10:44:33
ǰ¿Çµµ°¸
ľ³æ (СÓÐÃûÆø)
- Ó¦Öú: 5 (Ó×¶ùÔ°)
- ½ð±Ò: 2433.1
- ºì»¨: 3
- Ìû×Ó: 229
- ÔÚÏß: 36.4Сʱ
- ³æºÅ: 2594487
- ×¢²á: 2013-08-13
- ÐÔ±ð: GG
- רҵ: ²¡¶¾Ñ§
¡¾´ð°¸¡¿Ó¦Öú»ØÌû
|
package chat; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.OutputStream; import java.io.OutputStreamWriter; import java.io.PrintWriter; import java.net.InetAddress; import java.net.ServerSocket; import java.net.Socket; import java.util.ArrayList; import java.util.List; /** * ÁÄÌìÊÒ·þÎñ¶Ë * @author adminitartor * */ public class Server { /* * java.net.ServerSocket * ÔËÐÐÔÚ·þÎñ¶ËµÄServerSocketÖ÷ÒªÓÐÁ½¸ö×÷Óà * 1:ÉêÇë·þÎñ¶Ë¿Ú * 2:¼àÌý·þÎñ¶Ë¿Ú£¬Ò»µ©Ò»¸ö¿Í»§¶Ëͨ¹ý¸Ã¶Ë¿Ú½¨Á¢ * Á¬½Ó£¬Ôò´´½¨Ò»¸öSocketÓÃÓÚÓë¸Ã¿Í»§¶ËͨѶ */ private ServerSocket server; /* * ¸Ã¼¯ºÏÓÃÀ´´æ·ÅËùÓпͻ§¶ËµÄÊä³öÁ÷£¬ÓÃÓÚ½«ÏûÏ¢ * ¹ã²¥¸øËùÓпͻ§¶Ë */ private List<PrintWriter> allOut; public Server() throws IOException{ /* * ³õʼ»¯ServerSocketµÄͬʱÐèÒªÖ¸¶¨·þÎñ¶Ë¿Ú * ¸Ã¶Ë¿ÚºÅ²»ÄÜÓëϵͳÆäËûÓ¦ÓóÌÐòÒÑÉêÇëµÄ¶Ë¿Ú * ºÅÖØ¸´£¬·ñÔò»áÅ׳öÒì³£¡£ */ server = new ServerSocket(8088); allOut = new ArrayList<PrintWriter>(); } public void start(){ try { /* * ServerSocketÌṩ·½·¨: * Socket accept() * ¸Ã·½·¨»á¼àÌýServerSocketÉêÇëµÄ·þÎñ¶Ë¿Ú * ¡£ÕâÊÇÒ»¸ö×èÈû·½·¨£¬Ö±µ½Ò»¸ö¿Í»§¶Ëͨ¹ý * ¸Ã¶Ë¿ÚÁ¬½Ó²Å»á·µ»ØÒ»¸öSocket¡£Õâ¸ö·µ»Ø * µÄSocketÊÇÓÃÓÚÓëÁ¬½ÓµÄ¿Í»§¶Ë½øÐÐͨѶµÄ¡£ * */ while(true){ System.out.println("µÈ´ý¿Í»§¶ËÁ¬½Ó..." ;Socket socket = server.accept(); System.out.println("Ò»¸ö¿Í»§¶ËÁ¬½ÓÁË!" ;/* * Æô¶¯Ò»¸öÏß³ÌÓë¸Ã¿Í»§¶Ë½»»¥ */ ClientHandler handler = new ClientHandler(socket); Thread t = new Thread(handler); t.start(); } } catch (Exception e) { e.printStackTrace(); } } /** * ½«¸ø¶¨µÄÏûÏ¢¹ã²¥¸øËùÓпͻ§¶Ë * @param message */ private void sendMessage(String message){ synchronized (allOut) { //ת·¢¸øËùÓпͻ§¶Ë for(PrintWriter o : allOut){ o.println(message); } } } public static void main(String[] args) { try { Server server = new Server(); server.start(); } catch (Exception e) { e.printStackTrace(); } } /** * ¸ÃÏß³ÌÓÃÀ´Íê³ÉÓëÖ¸¶¨¿Í»§¶Ë½»»¥µÄ¹¤×÷ * @author adminitartor * */ private class ClientHandler implements Runnable{ /* * µ±Ç°Ïß³Ìͨ¹ýÕâ¸öSocketÓëÖ¸¶¨¿Í»§¶Ë½»»¥ */ private Socket socket; /* * Ô¶³Ì¼ÆËã»úµØÖ·ÐÅÏ¢£¬ÕâÀïÊǿͻ§¶ËµÄµØÖ· */ private String host; public ClientHandler(Socket socket){ this.socket = socket; /* * ͨ¹ýSocket¿ÉÒÔ»ñȡԶ¶Ë¼ÆËã»úµØÖ·ÐÅÏ¢ */ InetAddress address = socket.getInetAddress(); /* * »ñȡԶ¶Ë¼ÆËã»úIPµØÖ·µÄ×Ö·û´®¸ñʽ */ host = address.getHostAddress(); } public void run(){ PrintWriter pw = null; try { /* * InputStream getInputStream() * SocketÌṩµÄ¸Ã·½·¨¿ÉÒÔ»ñȡһ¸öÊäÈëÁ÷£¬ * ͨ¹ý¸ÃÁ÷¿Í»§¶ÁÈ¡µ½Ô¶¶Ë¼ÆËã»ú·¢Ë͹ýÀ´ * µÄÊý¾Ý¡£ */ InputStream in = socket.getInputStream(); InputStreamReader isr = new InputStreamReader(in,"UTF-8" ;BufferedReader br = new BufferedReader(isr); /* * ͨ¹ýSocket»ñÈ¡Êä³öÁ÷£¬ÓÃÓÚ½«Êý¾Ý·¢ËÍ * ¸ø¿Í»§¶Ë */ OutputStream out = socket.getOutputStream(); OutputStreamWriter osw = new OutputStreamWriter(out,"UTF-8" ;pw = new PrintWriter(osw,true); /* * ½«¸Ã¿Í»§¶ËµÄÊä³öÁ÷´æÈëµ½¹²Ïí¼¯ºÏÖÐ * * ÓÉÓÚ¶à¸öÏ̶߳¼»áµ÷Óøü¯ºÏµÄadd·½·¨ÏòÆäÖÐ * Ìí¼ÓÊä³öÁ÷£¬ËùÒÔΪÁ˱£Ö¤Ḭ̈߳²È«£¬¿ÉÒÔ½« * ¸Ã¼¯ºÏ¼ÓËø¡£ */ synchronized (allOut) { allOut.add(pw); } sendMessage(host+"ÉÏÏßÁË!,µ±Ç°ÔÚÏß"+allOut.size()+"ÈË" ;String message = null; while((message = br.readLine())!=null){ // System.out.println(host+"˵:"+message); //»Ø¸´¸øµ±Ç°¿Í»§¶Ë // pw.println(host+"˵:"+message); sendMessage(host+"˵:"+message); } } catch (Exception e) { } finally{ //´¦Àí¿Í»§¶Ë¶Ï¿ªÁ¬½ÓÒÔºóµÄ¹¤×÷ synchronized (allOut) { //½«¸Ã¿Í»§¶ËµÄÊä³öÁ÷´Ó¹²Ïí¼¯ºÏÖÐɾ³ý allOut.remove(pw); } sendMessage(host+"ÏÂÏßÁË!,µ±Ç°ÔÚÏß"+allOut.size()+"ÈË" ;if(socket != null){ try { socket.close(); } catch (IOException e) { e.printStackTrace(); } } } } } } |

4Â¥2018-01-12 10:45:16
ǰ¿Çµµ°¸
ľ³æ (СÓÐÃûÆø)
- Ó¦Öú: 5 (Ó×¶ùÔ°)
- ½ð±Ò: 2433.1
- ºì»¨: 3
- Ìû×Ó: 229
- ÔÚÏß: 36.4Сʱ
- ³æºÅ: 2594487
- ×¢²á: 2013-08-13
- ÐÔ±ð: GG
- רҵ: ²¡¶¾Ñ§

5Â¥2018-01-12 10:46:33













»Ø¸´´ËÂ¥
;