#记录与学习
头部指令: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;
}