UDP的发送与接收

package yuwei.com;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;

public class Send {

    public static void main(String[] args) throws IOException {
        // TODO Auto-generated method stub

        DatagramSocket ds = new DatagramSocket();

        BufferedReader bufr = 
                new BufferedReader(new InputStreamReader(System.in));
        String line = null;
        while((line = bufr.readLine())!=null) {
            if("886".equals(line)) {
                break;
            }else {
                byte[] buf = line.getBytes();
                DatagramPacket dp =
                        new DatagramPacket(buf,buf.length,InetAddress.getByName("192.168.153.1"),10001);
                ds.send(dp);
            }
        }
        ds.close();
    }

}
package yuwei.com;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;

public class ReceiveDemo {

    public static void main(String[] args) throws IOException {
        // TODO Auto-generated method stub

        DatagramSocket ds = new DatagramSocket(10001);

        while(true) {
            byte[] buf = new byte[1024];
            DatagramPacket dp = 
                    new DatagramPacket(buf,buf.length);
            ds.receive(dp);
            String ip = dp.getAddress().getHostAddress();
            String data = new String(dp.getData(),0,dp.getLength());
            System.out.println(ip + "::" + data);
        }
    }       

}

你可能感兴趣的:(网络编程,Java,UDP)