本帖最后由 刘茂林 于 2013-5-31 09:47 编辑
- import java.net.*;
- public class UdpSend
- {
- public static void main(String[] args)throws Exception
- {
- //1,创建UDP服务,通过DatagramSocket
- DatagramSocket ds = new DatagramSocket();
-
- //2,确定数据,并封装成数据包 DatagramSocket(byte[] b
-
- byte[] buf = "udp chu xian ".getBytes();
- DatagramPacket dp =
- new DatagramPacket(buf,buf.length,InetAddress.getByName("127.0.0.1"),10000);
-
- //3,通过socket服务,将已有的数据包发送出去,通过send方法
- ds.send(dp);
-
- //4,关闭资源
- ds.close();
- }
- }
- import java.net.*;
- public class UdpRece
- {
- public static void main(String[] args)throws Exception
- {
- //1,创建udp socket,建立端点
- DatagramSocket ds = new DatagramSocket(10000);
-
- //2,定义数据包,用于存储数据。
- byte[] buf = new byte[1024];
-
- DatagramPacket dp = new DatagramPacket(buf, buf.length);
-
- //3,通过服务的receeive方法将接收到的数据存入数据包中。
- ds.receive(dp);
-
- //4,通过数据包的方法获取其中的数据 (有获取地址,长度,端口等)
- String ip = dp.getAddress().getHostAddress();//获取IP
-
- //获取数据
- String data = new String(dp.getData() , 0 , dp.getLength());
-
- //获取端口
- int port = dp.getPort();
-
- System.out.println(ip + "::" + data + "::" + port);
-
- //关闭资源
- ds.close();
-
-
-
- }
- }
复制代码 第一个是发送端 第二个是接收端 问题是接收端开起来 发送端一编译 运行 就出现错误 求解释
|
|