读书人

没想到在扫尾的地方发生这种事

发布时间: 2012-09-07 10:38:15 作者: rapoo

没想到在收尾的地方发生这种事
问题是这样的:
tempArray = "68 02 31 A1 11 00 00 68 91 07 35 34 33 37 48 33 43 D1 16 ";
foreach (string ss in tempArray)
{

if (ss.StartsWith("68") && ss.EndsWith("16"))//判断68开始16结束的字符串
{
string[] arr = ss.Split(' ');//下面是进行的帧是否正确的判断操作没问题。
int x;
int[] a = new int[arr.Length];

for (int d = 0; d < arr.Length; d++)
{
a[d] = Convert.ToInt32(arr[d]);//出错!
}

到这里出错了,tempArray中的数其实都是16进制的数,但是这样的写法机器只能读成10进制的,在这句的时候:
for (int d = 0; d < arr.Length; d++)
{
a[d] = Convert.ToInt32(arr[d]);//出错!
}

当读到A1的时候肯定就报错了!我就是想把arr[d]中的的数赋给a[d],在进行下面的操作,请问这个问题怎么解决啊!

[解决办法]
Convert.ToInt32(arr[d],16);

读书人网 >C#

热点推荐