udp通信简单实例

来源:互联网 发布:淘宝店退货的店铺多么 编辑:程序博客网 时间:2024/06/05 16:59

客户端:

import java.io.*;import java.net.*;import java.util.Scanner;public class UDPClient{public static void main(String[] args){for(int i=1;i<5;i++){client();}}public static void client(){ try {      DatagramSocket ds = new DatagramSocket();      System.out.println("输入消息(按Enter发送)");  Scanner in=new Scanner(System.in);  System.out.print("客户端:");  String xx=in.nextLine();       DatagramPacket dp = new DatagramPacket(xx.getBytes(), xx.length(), InetAddress.getByName("localhost"), 6000);      ds.send(dp);      byte[] buf = new byte[1000];      DatagramPacket dpRecv = new DatagramPacket(buf, 1000);      ds.receive(dpRecv);  String output=new String(buf, 0, dpRecv.getLength());      System.out.println("服务器端:"+output);      ds.close();    }    catch (Exception ex) {      ex.printStackTrace();    }  }}

服务器端:

import java.io.*;import java.net.*;import java.util.Scanner;public class UDPServer{public static void main(String[] args){System.out.println("服务器已启动......");for(int i=1;i<5;i++){server();}}public  static void server(){try {      DatagramSocket ds = new DatagramSocket(6000);      byte[] buf = new byte[1000];      DatagramPacket dp = new DatagramPacket(buf, 1000);      ds.receive(dp);  String output=new String(buf, 0, dp.getLength());      System.out.println("客户端:"+output);      System.out.println("输入消息(按Enter发送)");  Scanner in=new Scanner(System.in);  System.out.print("服务器端:");  String x=in.nextLine();      DatagramPacket dpSend = new DatagramPacket(x.getBytes(), x.length(), dp.getAddress(), dp.getPort());      ds.send(dpSend);      ds.close();    }    catch (Exception ex) {      ex.printStackTrace();    }}}


原创粉丝点击