Java UDP

接收方

  1. 创建DatagramSocket实例并指定端口。
  2. 创建DatagramPacket实例接收信息。
  3. 调用DatagramSocket的receive()方法将接收信息并传递给DatagramPacket。
  4. 通过DatagramPacket的getData()方法获取信息内容,getLength()方法获取长度。
java 复制代码
package io.github.jast90.udp;

import java.net.DatagramPacket;
import java.net.DatagramSocket;

public class MyUdpRecv {

	public static void main(String[] args) throws Exception {
		
		DatagramSocket datagramSocket = new DatagramSocket(3000);
		byte[] buf = new byte[1024];
		DatagramPacket datagramPacket = new DatagramPacket(buf, 1024);
		datagramSocket.receive(datagramPacket);
		System.out.println(new String(datagramPacket.getData(),0,datagramPacket
				.getLength()));
		datagramSocket.close();
		
	}
}

发送方

  1. 创建DatagramSocket实例。
  2. 创建信息。
  3. 创建DatagramPacket实例并指定信息、信息长度、接收方ip地址及接收方端口。
  4. 调用DatagramSocket的send()方法发送DatagramPacket。
java 复制代码
package io.github.jast90.udp;

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

public class MyUdpSend {

	public static void main(String[] args) throws Exception {
		DatagramSocket datagramSocket = new DatagramSocket();
		String msg = "hello world";
		DatagramPacket datagramPacket = new DatagramPacket(msg.getBytes(), msg.length(),
				InetAddress.getByName("127.0.0.1"), 3000);
		datagramSocket.send(datagramPacket);
		datagramSocket.close();

	}
}
相关推荐
麻瓜生活睁不开眼3 小时前
Android16修改全局桌面视图边框四直角显示为弧边圆角
android·java·深度学习
dear_bi_MyOnly3 小时前
【MyBatis 操作数据库】
java·数据库·学习·mybatis·学习方法
Wang's Blog4 小时前
Go-Zero 项目开发43:基于 Filebeat 收集各个服务的日志信息
开发语言·golang·go-zero·filebeat
2601_953720824 小时前
【计算机毕业设计】基于Spring Boot的心理健康咨询与评测系统的设计与实现
java·spring boot·后端
丈剑走天涯5 小时前
JDK 17 正式特性
java·开发语言
秋田君5 小时前
QT_QFontDialog类字体对话框
开发语言·qt
圣光SG5 小时前
Java操作题练习(七)
java·开发语言·算法
麻瓜老宋6 小时前
AI开发C语言应用按步走,表达式计算器calc的第二十三步,多行输入、进制输出、错误恢复、常量折叠、配置加载等
c语言·开发语言·atomcode
q567315237 小时前
企业级 HTTP 代理采购选型:技术评估清单 15 项
开发语言·网络·爬虫·网络协议·http·隧道ip·代理ip
@航空母舰7 小时前
SpringBoot通过Map实现天然的策略模式
java·spring boot·后端