From 5b43c802bad0ce7ee7c57e0d1ab1ffbb6070e506 Mon Sep 17 00:00:00 2001 From: hyx Date: Mon, 5 Jul 2021 17:10:13 +0800 Subject: [PATCH] =?UTF-8?q?NEZ-762=20=E5=A2=9E=E5=8A=A0=E5=AF=B9target?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F=E4=B8=BAIP:PORT=E7=9A=84=E6=83=85=E5=86=B5?= =?UTF-8?q?=E7=9A=84=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/main/java/net/geedge/util/UdpUtils.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/main/java/net/geedge/util/UdpUtils.java b/src/main/java/net/geedge/util/UdpUtils.java index aa70182..e58c9c2 100644 --- a/src/main/java/net/geedge/util/UdpUtils.java +++ b/src/main/java/net/geedge/util/UdpUtils.java @@ -11,10 +11,17 @@ public class UdpUtils { private static final Logger logger = LoggerFactory.getLogger(TextFormatUtils.class); - public static String send(String sendIp,Integer slot,int timeout) { + public static String send(String target,Integer slot,int timeout) { + String sendIp = target; + int port = 6800; String rlt = ""; DatagramSocket ds = null; try { + if(target.contains(":")) { + int splitIndex = target.indexOf(":"); + sendIp = target.substring(0, splitIndex); + port = Integer.parseInt(target.substring(splitIndex+1, target.length())); + } ds = new DatagramSocket();//通过DatagramSocket对象创建udp服务 ds.setSoTimeout(timeout); // String line = "00 06 0502 00 00 68c2"; //发送的16进制字符串 @@ -24,7 +31,7 @@ public class UdpUtils { } String line = "00 "+slotStr+" 0502 00 00"; //发送的16进制字符串 byte[] buf = HexUtils.hexStringToByteArray(line); - DatagramPacket dp = new DatagramPacket(buf,buf.length,InetAddress.getByName(sendIp),6800);//发送至指定IP,指定端口 + DatagramPacket dp = new DatagramPacket(buf,buf.length,InetAddress.getByName(sendIp),port);//发送至指定IP,指定端口 ds.send(dp);//通过send方法将数据包发送出去 //定义数据包,用于存储数据 byte[] buf2 = new byte[8];