| | |
| | | using HH.WCS.Mobox3.DoubleCoin.models; |
| | | using HH.WCS.Mobox3.DoubleCoin.util; |
| | | using System; |
| | | using System.Text; |
| | | using static HH.WCS.Mobox3.DoubleCoin.api.ApiModel; |
| | | |
| | | namespace HH.WCS.Mobox3.DoubleCoin.wms |
| | |
| | | } |
| | | } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 将16进制字符串转换为ASCII字符串 |
| | | /// </summary> |
| | | /// <param name="hexString"></param> |
| | | /// <returns></returns> |
| | | public static string ConvertHexToAscii(string hexString) |
| | | { |
| | | LogHelper.Info($"将16进制字符串转换为ASCII字符串,转换前:{hexString}"); |
| | | |
| | | // 验证输入是否为16位16进制字符串 |
| | | if (hexString.Length != 16 || !System.Text.RegularExpressions.Regex.IsMatch(hexString, @"^[0-9A-Fa-f]+$")) |
| | | { |
| | | throw new ArgumentException("输入必须是16位的16进制字符串"); |
| | | } |
| | | |
| | | // 每两位转换一个ASCII字符 |
| | | StringBuilder asciiString = new StringBuilder(); |
| | | for (int i = 0; i < 16; i += 2) |
| | | { |
| | | string hexPair = hexString.Substring(i, 2); |
| | | byte asciiChar = Convert.ToByte(hexPair, 16); |
| | | asciiString.Append((char)asciiChar); |
| | | } |
| | | |
| | | LogHelper.Info($"将16进制字符串转换为ASCII字符串,转换后:{asciiString.ToString()}"); |
| | | return asciiString.ToString(); |
| | | } |
| | | } |
| | | } |