资源简介

子站端发送工具,自动补全包尾。协议包数据放在发送数据部分即可,返回数据为平台返回的数据包

资源截图

代码片段和文件信息

using System;
using System.Collections.Generic;
using System.Text;

namespace Wt.FormUI
{
    public class ByteConvert
    {
        ///   
        /// 字符串转16进制字节数组  
        ///   
        ///   
        ///   
        public static byte[] strToToHexByte(string hex)
        {
            //hexString = hexString.Replace(“ “ ““);
            //if ((hexString.Length % 2) != 0)
            //    hexString += “ “;
            //byte[] returnBytes = new byte[hexString.Length / 2];
            //for (int i = 0; i < returnBytes.Length; i++)
            //    returnBytes[i] = Convert.ToByte(hexString.Substring(i * 2 2) 16);
            //return returnBytes;
            if (hex == null)
                throw new ArgumentNullException(“hex“);
            hex = hex.Replace(““ ““);
            hex = hex.Replace(“\n“ ““);
            hex = hex.Replace(“\\“ ““);
            hex = hex.Replace(“ “ ““);
            if (hex.Length % 2 != 0)
            {
                hex += “20“;//空格 
            }
            // 需要将 hex 转换成 byte 数组。 
            byte[] bytes = new byte[hex.Length / 2];
            for (int i = 0; i < bytes.Length; i++)
            {
                try
                {
                    // 每两个字符是一个 byte。 
                    bytes[i] = byte.Parse(hex.Substring(i * 2 2)
                    System.Globalization.Numberstyles.HexNumber);
                }
                catch
                {
                    // Rethrow an exception with custom message. 
                    throw new ArgumentException(“hex is not a valid hex number!“ “hex“);
                }
            }
            //System.Text.Encoding chs = System.Text.Encoding.GetEncoding(charset);
            //return chs.GetString(bytes);
            return bytes;
        }
        ///   
        /// 字节数组转16进制字符串  
        ///   
        ///   
        ///   
        public static string byteToHexStr(byte[] bytes)
        {
            StringBuilder builder = new StringBuilder(); ;
            if (bytes != null)
            {
                for (int i = 0; i < bytes.Length; i++)
                {
                    builder.AppendFormat(“{0} “ bytes[i].ToString(“X2“));
                }
            }
            string returnStr = builder.ToString();
            return returnStr;
        }

        ///   
        /// 从汉字转换到16进制  
        ///   
        ///   
        /// 编码如“utf-8““gb2312“  
        /// 是否每字符用逗号分隔  
        ///   
        public static string ToHex(string s string charset bool fenge)
        {
            if ((s.Length % 2) != 0)
            {
                s += “ “;//空格  
                         //throw new ArgumentException(“s is not valid chinese string!“);  
            }
            System.Text.Encoding chs = System.Text.Encoding.GetEncoding(charset);
            byte[] bytes = chs.GetBytes(s);
            string str = ““;
            for (int i = 0; i 

评论

共有 条评论