8进制转换成10进制,但是有错误,在线等解释啊
亭子青年 2012-05-22 12:26:07
这是为什么呢?唉!我的八进制是这样的,
public static int BaToShi(string data)
{
int s;
int sum = 0;
int p = 1;
for (int i = data.Length - 1; i >= 0; i--)
{
s = Convert.ToInt16(data[i]);
s = s * p;
p = p * 8;
sum = sum + s;
}
return sum;
}
我的16进制还是这样的,怎么就不对了???求解释啊。
public static int ShiLiuToShi(string data)
{
char c;
int s;
int sum = 0;
int p = 1;
for (int i = data.Length - 1; i >= 0; i--)
{
c=data[i];
switch (c)
{
case 'A': s = 10; break;
case 'B': s = 11; break;
case 'C': s = 12; break;
case 'D': s = 13; break;
case 'E': s = 14; break;
case 'F': s = 15; break;
default: s = Convert.ToInt16(c); break;
}
s = s * p;
p = p * 16;
sum = sum + s;
}
return sum;
}
在线等你们哦。。。