UDP和TCP

来源:互联网 发布:陕西和泰单片机 编辑:程序博客网 时间:2024/04/30 16:27
UDP:
1.发送端:
//1.实例化一个DatagramSocket
DatagramSocket socket = new DatagramSocket();
//2.准备数据
InetAddress ip = InetAddress.getByName("Yang-PC");
int port = 8888;
byte[] byteArray = "你好".getBytes();
//3.准备数据包
DatagramPacket pck = new DatagramPacket(byteArray,byteArray.length,ip,port);
//4.发送数据
socket.send(pck);
//5.释放资源
socket.close();
2.接收端:
//1.实例化一个DatagramSocket
DatagramSocket socket = new DatagramSocket(8888);
//2.准备空的byte[]数组
byte[] byteArray = new byte[1024];
//3.准备空的数据包
DatagramPacket pck = new DatagramPacket(byteArray,byteArray.length);
//4.接收数据
socket.receive(pck);
//5.解析数据
String ip = pck.getAddress().getHostAddress();
byteArray = pck.getData();
String info = new String(byteArray,0,pck.getLength());
//6.释放资源
socket.close();
TCP:
1.发送端:
//1.实例化一个Socket
Socket socket = new Socket("127.0.0.1",8888);
//2.获取输出流
OutputStream out = socket.getOutputStream();
//3.输出数据
out.write("你好".getBytes());
//4.释放资源
socket.close();
2.接收端:
//1.实例化一个ServerSocket
ServerSocket server = new ServerSocket(8888);
//2.等待连接
Socket socket = server.accept();
//3.获取输入流
InputStream in = socket.getInputStream();
//4.读取数据
byte[] byteArary = new byte[1024];
int len = in.read(byteArray);
String str = new String(byteArray,0,len);
System.out.println("接收到的数据:" + str);
//5.释放资源
socket.close();
0 0
原创粉丝点击