ACK 消息(十六进制到 ASCII)

本文关键字:ASCII 十六进制 消息 ACK | 更新日期: 2023-09-27 17:56:11

我正在尝试确认收到的消息,并希望将其与我的程序发送的代码相匹配。

短信输出采用此格式<<<phonenumber,ASCII,5,436865636b>>>

我想隔离电话号码和 5 之后的消息,并将其转换为 ASCII

我已经有一台 UDP 服务器。

提前谢谢。

解决:

            var ascii = string.Empty;
            for (var i = 0; i < hexString.Length; i += 2)
            {
                var hs = hexString.Substring(i, 2);
                var decval = Convert.ToUInt32(hs, 16);
                var character = Convert.ToChar(decval);
                ascii += character;
            }
            return ascii;

ACK 消息(十六进制到 ASCII)

使用 Regex 处理模式文本提取。

var message = @"<<<phonenumber,ASCII,5,436865636b>>>";
var pattern = @"<<<(?<phoneNumber>'w+),ASCII,5,(?<value>'w+)>>>";
var match = Regex.Match(message, pattern);
var phoneNumber = match.Groups["phoneNumber"].Value;
var value = match.Groups["value"].Value;