A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

UDP发送和接收数据的代码,最为基本的操作,为后面的案例代码题打好基础
//UDP协议的发送
/*
* 创建发送的Socket对象
* 创建数据并打包:数据,数据长度,ip地址,端口
* 调用方法发送
* 释放资源
*/
public class SendDemo {
        public static void main(String[] args) throws IOException {
                // 创建发送端的Socket对象
                DatagramSocket ds = new DatagramSocket();
                // 创建数据并打包
                byte[] bys = "hello,heima!".getBytes();
                // 创建包对象
                DatagramPacket dp = new DatagramPacket(bys, bys.length,
                                InetAddress.getByName("192.168.0.108"), 10086);
                //发送数据
                ds.send(dp);
                //释放资源
                ds.close();
        }
}
/*
* 创建接收端Socket对象
* 创建数据包
* 接收数据
* 解析数据,并显示在控制台
* 释放资源
*
*/
public class ReceiveDemo {
        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 s = new String(dp.getData(),0,dp.getLength());
                //输出控制台
                System.out.println("from "+ip+"data is "+s);
        }
}


1 个回复

正序浏览
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马