机器生成的数,一大堆,有规律,68 a0 a1 a2 a3 a4 a5 68 01 L D 12 16,其中只有L和D是变化的,而且D
的位数由L决定,例如L=04,则D的位数就是0*16+4=4个,所以D可能就出现31 32 33 34这样一组数,那这组数就变成
68 a0 a1 a2 a3 a4 a5 68 01 04 31 32 33 34 12 16,而且每一组数都是68开始,16结尾。。重点就是做一个软件测试每一组这样的数据,L和D
的关系对不对,也就是这组数位数对不对。。可能写得多了。真的愁死了,没做过winform啊给各位跪了,求代码啊
的位数由L决定,例如L=04,则D的位数就是0*16+4=4个,所以D可能就出现31 32 33 34这样一组数,那这组数就变成
68 a0 a1 a2 a3 a4 a5 68 01 04 31 32 33 34 12 16,而且每一组数都是68开始,16结尾。。重点就是做一个软件测试每一组这样的数据,L和D
的关系对不对,也就是这组数位数对不对。。可能写得多了。真的愁死了,没做过winform啊给各位跪了,求代码啊
解决方案 »
- TCP/IP编程中怎么把字节流传输改为比特流传输?
- 安装Oracle时网络验证未执行应该怎样解决啊
- 怎么把一台服务器上的一个数据库中的表完全复制到另一台服务器上?
- 如何解决几十万条数据的并发
- .net 2005 里安装程序制作问题
- 请问关于 Reporting Services 2000 的问题应该在哪个地方问?
- 如何实现基于Internet的报表管理软件
- 求助:ASCII編碼轉換成Unicode編碼問題,
- 自定义控件加载,求高手帮帮小忙~~!
- 只用一个文本框和c#中所以的类如何来写一个象MSHFlexGrid一样的.net组件
- asp.net 导出word代码问题
- StreamWriter(xxxx)参数若写为字符变量该如何写
2、取到L计算D的位数
3、验证D的位数
// using System.Linq;
bool IsLengthCorrect(string s)
{
string[] arr = s.Split(' ');
int L = int.Parse(arr[9], System.Globalization.NumberStyles.AllowHexSpecifier);
string[] D = arr.Skip(10).Take(arr.Length - 10 - 2).ToArray();
return L == D.Length;
}// test
string s = "68 a0 a1 a2 a3 a4 a5 68 01 04 31 32 33 34 12 16";
bool b = IsLengthCorrect(s); // true
3.5以上的话using那里加上
using System.Linq;
我用个.net3.5框架,给你重写一遍吧。
Boolean CheckLen(String sData)
{
if (String.IsNullOrEmpty(sData))
{
return false;
} String[] sArr = sData.Split(' '); //因为位数确定,即使 L="00",总长度也应该是12
if (sArr.Length < 12)
{
return false;
} int iL = Convert.ToInt32(sArr[9], 16); return iL == (sArr.Length - 12);
}