首页 > 代码库 > java实现UDP协议传输DatagramSocket

java实现UDP协议传输DatagramSocket

摘自:http://blog.csdn.net/wintys/article/details/3525643/

Server端。

package com.topca.server;import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;public class UDPServer {    public static void main(String[] args) throws IOException {        DatagramSocket server = new DatagramSocket(5050);        byte[] recvBuf = new byte[100];        DatagramPacket recvPacket = new DatagramPacket(recvBuf, recvBuf.length);        server.receive(recvPacket);        String recvStr = new String(recvPacket.getData(), 0,                recvPacket.getLength());        System.out.println("Hello World!" + recvStr);        int port = recvPacket.getPort();        InetAddress addr = recvPacket.getAddress();        String sendStr = "Hello ! I‘m Server";        byte[] sendBuf;        sendBuf = sendStr.getBytes();        DatagramPacket sendPacket = new DatagramPacket(sendBuf, sendBuf.length,                addr, port);        server.send(sendPacket);        server.close();    }}

Client端

package com.topca.clien;import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetAddress;public class UDPClien {     public static void main(String[] args)throws IOException{            DatagramSocket client = new DatagramSocket();                        String sendStr = "Hello! I‘m Client";            byte[] sendBuf;            sendBuf = sendStr.getBytes();            InetAddress addr = InetAddress.getByName("10.0.1.203");            int port = 5050;            DatagramPacket sendPacket                 = new DatagramPacket(sendBuf ,sendBuf.length , addr , port);            client.send(sendPacket);            byte[] recvBuf = new byte[100];            DatagramPacket recvPacket                = new DatagramPacket(recvBuf , recvBuf.length);            client.receive(recvPacket);            String recvStr = new String(recvPacket.getData() , 0 ,recvPacket.getLength());            System.out.println("收到:" + recvStr);            client.close();        }}

 

java实现UDP协议传输DatagramSocket