黑马程序员技术交流社区

标题: 新Get技能:UDP协议代码发送和接收 [打印本页]

作者: 王盟    时间: 2015-9-7 21:46
标题: 新Get技能:UDP协议代码发送和接收
UDP协议发送数据
UDP协议发送数据步骤:
A:创建发送端Socket服务对象
B:创建数据,并把数据打包
C:发送数据
D:释放资源

UDP协议接收数据
接收数据步骤:
A:创建接收端Socket服务对象
B:创建数据包(一个接收容器)
C:调用接收方法
D:解析数据包,把数据显示在控制台。
E:释放资源

Send信息的代码实现:
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
public class SendDatagramSocketDemo {
        public static void main(String[] args) throws IOException {
                // 创建Socket服务对象
                DatagramSocket ds = new DatagramSocket();
                // 创建数据,并将数据打包
                String data = "到此一游!";
                DatagramPacket dp = new DatagramPacket(data.getBytes(),
                                data.getBytes().length, InetAddress.getByName("192.168.22.85"),
                                10086);
                // 发送数据
                ds.send(dp);
                // 释放资源
                ds.close();
        }
}
        Receive的代码实现:
public class ReceiveDatagramSocketDemo {
        public static void main(String[] args) throws IOException {
                // 创建Socket对象
                DatagramSocket ds = new DatagramSocket(10086);
                // 创建数据接受包
                byte[] bys = new byte[1024];
                DatagramPacket dp = new DatagramPacket(bys, bys.length);
                // 接收数据包
                ds.receive(dp);
                // 解析
                String ip = dp.getAddress().getHostAddress();
                String data = new String(dp.getData(), 0, dp.getLength());
                System.out.println(ip + "..." + data);
                // 释放资源
                ds.close();
        }
}






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2