public void StartListen() { // UDP服务器监听的端口 int port = 4000; // 接收的字节大小,客户端发送的数据不能超过这个大小 byte[] message = new byte[512]; DatagramSocket datagramSocket = new DatagramSocket(port); datagramSocket.Broadcast = true; DatagramPacket datagramPacket = new DatagramPacket(message, message.Length); try { while (!IsThreadDisable) { datagramSocket.Receive(datagramPacket); string strMsg = new Java.Lang.String(datagramPacket.GetData()).Trim(); string[] msg = strMsg.Split(new string[] { "\r\n" }, StringSplitOptions.None); } } catch (System.Exception e) { } }
/// <summary> /// 如果输出的是两条Debug 是否会有信号问题 /// </summary> /// <returns></returns> public string[] ReadToCommand() { try { datagramSocket.Receive(datagramPacket); string strMsg = new Java.Lang.String(datagramPacket.GetData()).Trim(); string[] msg = strMsg.Split(new string[] { "\r\n" }, StringSplitOptions.None); return(msg); } catch (System.Exception ex) { Log.Error("UDPERROR", ex.Message); } return(new string[0]); }
public static string[] split(this Java.Lang.String value, string regex) { return(value.Split(regex)); }