网络编程udp

来源:互联网 发布:java中文分词器 编辑:程序博客网 时间:2024/06/03 19:45

使用UDP协议编写一个网络程序,设置接收端程序的监听端口是8001,发送端发送的数据是“Hello, world”

import java.net.*;public class UDPfsd {public static void main(String[] args) throws Exception {// TODO Auto-generated method stub//创建一个DatagramSocket对象DatagramSocket ds=new DatagramSocket(8012);//要发送的数据String str="hello world";//创建一个要发送的数据包,数据包包括发送的数据,数据长度,接收端的ip地址以及端口号DatagramPacket dp=new DatagramPacket(str.getBytes(),str.length(),InetAddress.getByName("localhost"),8001);System.out.println("发送信息");ds.send(dp);//发送数据ds.close();//释放资源}}

import java.net.*;public class UDPjsd {public static void main(String[] args) throws Exception {// TODO Auto-generated method stub//创建一个长度为1024字节的字节数组,用于接收数据byte[] buf=new byte[1024];//定义一个DatagramSocket对象,监听的端口号为8001DatagramSocket ds=new DatagramSocket(8001);//定义一个DatagramPocket对象,用于接收数据DatagramPacket dp=new DatagramPacket(buf,1024);System.out.println("等待接收数据");ds.receive(dp);//等待接收数据//调用DatagramPocket的方法获得接收到的信息,包括数据的内容、长度、发送的ip地址和端口号String str=new String(dp.getData(),0, dp.getLength())+"from"+dp.getAddress().getHostAddress()+":"+dp.getPort();//打印接收到的消息System.out.println(str);ds.close();//释放资源}}