如何用C#把十六进制转换成十进制的代码?

 我来答
Conqueror
高粉答主

2018-03-30 · 关注我不会让你失望
知道大有可为答主
回答量:794
采纳率:100%
帮助的人:25.1万
展开全部

publicstringDtoX(intd)

{

stringx="";

if(d<16)

{

x=chang(d);

}

else

{

intc;

ints=0;

intn=d;

inttemp=d;

while(n>=16)

{

s++;

n=n/16;

}

string[]m=newstring[s];

inti=0;

do

{

c=d/16;

m[i++]=chang(d%16);//判断是否大于10,如果大于10,则转换为A~F的格式

d=c;

}while(c>=16);

x=chang(d);

for(intj=m.Length-1;j>=0;j--)

{

x+=m[j];

}

}

returnx;

}

//判断是否为10~15之间的数,如果是则进行转换

publicstringchang(intd)

{

stringx="";

switch(d)

{

case10:

x="A";

break;

case11:

x="B";

break;

case12:

x="C";

break;

case13:

x="D";

break;

case14:

x="E";

break;

case15:

x="F";

break;

default:

x=d.ToString();

break;

}

returnx;

}

晴晴知识加油站
高能答主

2018-05-29 · 让梦想飞扬,让生命闪光。
晴晴知识加油站
采纳数:3595 获赞数:661367

向TA提问 私信TA
展开全部

可以用int aaa int = Convert.ToInt32(aaa,16); 来转换。十六进制的ABCD = 十进制的(((A*16+B)*16+C)*16+D)*16。

一、用ToString()方法就行int i = 13。string s = i.ToString("X2")。ToString()的参数 X表示十六进制字符串,数字2表示显示位数结果为:0Dstring s = i.ToString("X1")。结果为:D

二、操作代码:intmyTempR=int.Parse(this.myBnum.Text,System.Globalization.NumberStyles.HexNumber);for ( int i=0; i<this.myRnum.Text.Length; i+=2 ) { myTempR -=int.Parse(this.myRnum.Text.Substring(i,2),System.Globalization.NumberStyles.HexNumber);} int myTemp01 = myTempR.ToString("X").Length;if (  myTemp01 > 4 ) this.myResult.Text = myTempR.ToString("X").Substring(myTemp01-4); else   this.myResult.Text=myTempR.ToString("X")。

三、string s = "";  //一串字符string[] a = s.ToString().Split(' ');for(int i = 0; i < a.Length; i ++)
{int b = Convert.ToInt32(a[i],16);}。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式