.NET C#怎么把十进制转换成高位在前地位在后的十六进制?
4个回答
展开全部
网上找的,不知道是否正确:
//十进制转十六进制
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;
}
//十进制转十六进制
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;
}
展开全部
int num = 12345678;
byte[] bData = BitConverter.GetBytes(num);
Array.Reverse(bData);
Console.WriteLine("十进制数(Int32): {0} 用二进制表示为(高字节在前):\r\n{1}", num,
BitConverter.ToString(bData));
/* 结果:
* 十进制数(Int32): 12345678 用二进制表示为(高字节在前):
* 00-BC-61-4E
*
*/
byte[] bData = BitConverter.GetBytes(num);
Array.Reverse(bData);
Console.WriteLine("十进制数(Int32): {0} 用二进制表示为(高字节在前):\r\n{1}", num,
BitConverter.ToString(bData));
/* 结果:
* 十进制数(Int32): 12345678 用二进制表示为(高字节在前):
* 00-BC-61-4E
*
*/
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你想要一个十六进制字符串的形式相互转换十六进制的ASCII字符,它代表了吗?你的数据源是一个byte []没什么可说的吗?
在第一的ToString(“X”),直接调制的每一个字节,然后叠加。的
例子:
字节= 0XFF;
字符串s = b.ToString(“X”);/ / S =“FF”
第二:字节可以被转移直接进入字符,ASCII码就是一个字节,前面由一个(char)的强转,然后添加到字符串迭代。
字符串s = string.Empty;
+ =(CHAR)B ;/ / s的ASCII代码255的值表示的字符,我打不出来尴尬。
在第一的ToString(“X”),直接调制的每一个字节,然后叠加。的
例子:
字节= 0XFF;
字符串s = b.ToString(“X”);/ / S =“FF”
第二:字节可以被转移直接进入字符,ASCII码就是一个字节,前面由一个(char)的强转,然后添加到字符串迭代。
字符串s = string.Empty;
+ =(CHAR)B ;/ / s的ASCII代码255的值表示的字符,我打不出来尴尬。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我只是做了转换。我做十进制到二进制的,它的代码给你看看。八进制让自己慢慢写。
诠释A = 64,B ??= 64;
整数C = 0;
(b! = 0)
{
B / = 2;
> C + = 1;
}
[] Ejz =新的int [C];
(INT I = C - 1> 0; I - )
{
Ejz [我] =(int)的2%;
A / = 2;
}
Ejz [0] = 1;
控制台。 WriteLine的(“转换成二进制:”);
(INT I = 0;我<C,我+ +)
{
Console.Write(Ejz [I]);
>}
我不明白你是指哈萨克斯坦。你可以找我QQ378049214
诠释A = 64,B ??= 64;
整数C = 0;
(b! = 0)
{
B / = 2;
> C + = 1;
}
[] Ejz =新的int [C];
(INT I = C - 1> 0; I - )
{
Ejz [我] =(int)的2%;
A / = 2;
}
Ejz [0] = 1;
控制台。 WriteLine的(“转换成二进制:”);
(INT I = 0;我<C,我+ +)
{
Console.Write(Ejz [I]);
>}
我不明白你是指哈萨克斯坦。你可以找我QQ378049214
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询