C# 常见喷码设备指令生成代码

#记录与学习

头部指令:02 31 30 31 31 36 30 32  

#关键代码

 private void button1_Click(object sender, EventArgs e)

{

string topis="02 31 30 31 31 36 30 32  ";

string tailis=" 0D 0A";

 string res = textBox1.Text;

string Ikascii=InkjetASCII(res);

string ACSii=topis+Ikascii;

 var sum = ACSii.Split(' ').Select(i =>Convert.ToInt32(i,16)).Sum();//求和

 string xyh = Convert.ToString(sum, 16);

textBox3.Text = xyh.ToString();//校验和

  textBox4.Text = ACSii + " " + XYHY8(xyh) + tailis;//最终指令

}

public static string InkjetASCII(string code)
        {
            char[] cs = code.ToCharArray();
            string Hstr = null;
            for (int l = 0; l < cs.Length; l++)
            {
                if ((l + 1) >= cs.Length)
                {
                    Hstr += ((int)cs[l]).ToString("X");
                }
                else
                {
                    Hstr += ((int)cs[l]).ToString("X") + " ";
                }
            }
            return Hstr;
        }

 public string XYHY8(string rel)
        {
            if (rel.Length>2)
            {
                string result = string.Empty;
                result = rel.Substring(rel.Length - 2, 2);
                return result;
            }
            return rel;
        }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值