网络编程:基于UDP实现网络通信
client1.java
package cn.xtnotes.udp;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.InetAddress;
import java.net.SocketException;
public class Client1 {
public static void main(String[] args) throws Exception {
DatagramSocket socket=new DatagramSocket(); //不需要指定端口号
String msg="你好,我是一号客户端";
//将要发送的信息打包成一个数据包 ,需要准备4个参数
byte[] b=msg.getBytes();
int len=b.length;
InetAddress ip=InetAddress.getByName("localhost");
int port = 7777;
//用来收发udp包
DatagramPacket dp=new DatagramPacket(b,len,ip,port);
socket.send(dp);
socket.close();
}
}
client2.java
package cn.xtnotes.udp;
import java.io.IOException;
import java.net.DatagramPacket;
import java.net.DatagramSocket;
import java.net.SocketException;
public class Client2 {
public static void main(String[] args) throws Exception {
//参与通信的两方需要有一方先指定端口号
DatagramSocket socket=new DatagramSocket(7777); // 此对象将字节填充到UDP包
System.out.println("client2已准备好,快来连接我吧!");
//准备空的byte数组用来接收信息
byte[] b=new byte[1024];
int len=b.length;
//用来收发UDP包
DatagramPacket dp=new DatagramPacket(b,len);
socket.receive(dp);// 接收信息
String msg=new String(b,0,dp.getLength());
System.out.println("client2接收到的消息:"+msg);
socket.close();
}
}
先运行client2
在运行client1
阅读剩余
版权声明:
作者:Tin
链接:http://www.tinstu.com/645.html
文章版权归作者所有,未经允许请勿转载。
THE END