int len = Convert.ToUInt16(sTotaSend.Substring(10, 2)+sTotaSend.Substring(8, 2), 16);
if (sTotaSend.Length/2 !=len)
{
string slen = Convert.ToString(sTotaSend.Length/2, 16).PadLeft(4,'0');
sTotaSend = sTotaSend.Remove(8, 4);
sTotaSend = sTotaSend.Insert(8, slen.Substring(slen.Length - 2, 2) + slen.Substring(0, slen.Length - 2));
string sconnetlen= Convert.ToString(sTotaSend.Length / 2 - 0x13, 16).PadLeft(4, '0');
sTotaSend = sTotaSend.Remove(26, 4);
sTotaSend = sTotaSend.Insert(26, sconnetlen.Substring(sconnetlen.Length - 2, 2) + sconnetlen.Substring(0, sconnetlen.Length - 2));
}
字符串转整数,整数转16进制字符串,低位在前。
本文介绍了一段用于校验和修正16进制字符串中长度字段的C#代码片段。该方法首先将字符串转换为整数进行长度比较,若不符则调整字符串中的长度值,确保其正确反映实际长度。涉及字符串到整数的转换、16进制字符串操作及低位在前的转换技巧。

804

被折叠的 条评论
为什么被折叠?



