1. 程式人生 > 實用技巧 >UDP通訊demo

UDP通訊demo

要求:使得接受者可以連續接收發送者傳送的資料
傳送的資料是可變的,如可以從控制檯上輸入;

public void sendSocket() throws IOException {
        DatagramSocket socket = new DatagramSocket(10001);
        while (true) {
            byte[] bs = new byte[1024];
            DatagramPacket pack = new DatagramPacket(bs, bs.length);
            socket.receive(pack);
            InetAddress adress 
= pack.getAddress(); byte[] b = pack.getData(); int port = pack.getPort(); System.out.print(adress + " "); System.out.print(port + " "); System.out.println(new String(b, 0, b.length)); } }
//鍵盤接收資料的傳送端
public
static void main(String[] args) throws
Exception { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = null; DatagramSocket socket = new DatagramSocket(); DatagramPacket pack = null; byte[] bs = null; while ((str = br.readLine()) != null) { if
(str.equals("finish")) break; bs = str.getBytes(); pack = new DatagramPacket(bs, bs.length, InetAddress.getByName("127.0.0.1"), 10001); socket.send(pack); } socket.close(); }