您的位置:首页 > 理论基础 > 计算机网络

Java_网络编程_使用UDP协议发送及接收数据

2015-02-04 22:23 1241 查看
package test;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;

public class UDPSender {
public static void main(String[] args) throws IOException {
// 建立UDP的Socket
DatagramSocket ds = new DatagramSocket(3333);

// 将数据封装到数据包中。数据包对象是DatagramPacket
String text = "Hello UDP";
byte[] buf = text.getBytes();
DatagramPacket dp = new DatagramPacket(buf, buf.length,
InetAddress.getByName("127.0.0.1"), 10000);

// 发送数据
ds.send(dp);

// 关闭资源
ds.close();
}
}


package test;

import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;

public class UDPReceiver {
public static void main(String[] args) throws IOException {
// 建立UDP的Socket
DatagramSocket ds = new DatagramSocket(10000);
byte[] buf = new byte[1024];
DatagramPacket dp = new DatagramPacket(buf, buf.length);
ds.receive(dp);// 阻塞

// 解析数据包的内容
String ip = dp.getAddress().getHostAddress();
int port = dp.getPort();
String text = new String(dp.getData(), 0, dp.getLength());
System.out.println(ip + ":" + port + ":" + text);
ds.close();
}
}
输出:

127.0.0.1:3333:Hello UDP
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: