用java的Udp写聊天程序,为什么不能实现一个端口号同时向两个端口号发送消息?不知如何实现,请高手解答?

 我来答
百度网友d775ab983
推荐于2016-11-15 · TA获得超过1474个赞
知道答主
回答量:232
采纳率:0%
帮助的人:150万
展开全部
使用DatagramSocket和DatagramPacket
其中DatagramSocket使用一个发送的端口号
DatagramPacket的参数
DatagramPacket(bytes[] bytes,int bytes[].length,InetAddress ip, int port);里的port就是目标端口
要向两个端口号发送,需要创建两个DatagramPacket,分别填写两个IP地址和端口号,并用DatagramSocket发送。
另外两个端口需要做监听
要注意ip要为局域网可以畅通无阻,广域网可能导致网管阻止
下面是个例子,发两遍即可。
int SERVER_PORT=7000;
String severIp="192.168.1.100";
DatagramSocket clientSocket;
try
{
InetAddress local = InetAddress.getByName(severIp);
DatagramPacket dPacket;
clientSocket = new DatagramSocket;
dPacket = new DatagramPacket("Hello".getBytes("utf-8"),"Hello".getBytes("utf-8").length,
local, SERVER_PORT);
clientSocket.send(dPacket);//这里是发送
byte[] msg = new byte[11246];
DatagramPacket rPacket = new DatagramPacket(msg, msg.length);
clientSocket.receive(rPacket);//这里是接收监听
}
catch (IOException e)
{
e.printStackTrace();
}
clientSocket.close();
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式