C#进制转换

下面是用代码制作的一个进制转换的转换器代码如下:
class Transform
{
internal string TenToBinary(long value)//将十进制转换为二进制
{
return Convert.ToString(value, 2);
}
internal string TenToEight(long value)//将十进制转换为八进制
{
return Convert.ToString(value, 8);
}
internal string TenToSixteen(long value)//将十进制转换为十六进制
{
return Convert.ToString(value, 16);
}
internal string BinaryToEight(long value)//将二进制转换为八进制
{
return Convert.ToString(
Convert.ToInt64(value.ToString(), 2), 8);
}
internal string BinaryToTen(long value)//将二进制转换为十进制
{
return Convert.ToInt64(
value.ToString(), 2).ToString();
}
internal string BinaryToSixteen(long value)//将二进制转换为十六进制
{
return Convert.ToString(
Convert.ToInt64(value.ToString(), 2), 16);
}
internal string EightToBinary(long value)//将八进制转换为二进制
{
return Convert.ToString(
Convert.ToInt64(value.ToString(), 8), 2);
}
internal string EightToTen(long value)//将八进制转换为十进制
{
return Convert.ToInt64(
value.ToString(), 8).ToString();
}
internal string EightToSixteen(long value)//将八进制转换为十六进制
{
return Convert.ToString(
Convert.ToInt64(value.ToString(), 8), 16);
}
internal string SixteenToBinary(string value)//将十六进制转换为二进制
{
return Convert.ToString(
Convert.ToInt64(value, 16), 2);
}
internal string SixteenToEight(string value)//将十六进制转换为八进制
{
return Convert.ToString(
Convert.ToInt64(value, 16), 8);
}
internal string SixteenToTen(string value)//将十六进制转换为十进制
{
return Convert.ToUInt64(value, 16).ToString();
}
}
///
/// 此方法用于进制转换
///
private void Action()
{
if (cbox_select.SelectedIndex != 3)//判断用户输入是否为十六进制数
{
long P_lint_value;//定义长整型变量
if (long.TryParse(txt_value.Text, out P_lint_value))//判断输入数值是否正确并赋值
{
if (cbox_select.SelectedIndex == 0)//判断用户输入的是否为十进制数
{
switch (cbox_select2.SelectedIndex)
{
case 0:
txt_result.Text = txt_value.Text;//将十进制转为十进制
break;
case 1:
txt_result.Text = //将十进制转为二进制
new Transform().TenToBinary(long.Parse(txt_value.Text));
break;
case 2:
txt_result.Text = //将十进制转为八进制
new Transform().TenToEight(long.Parse(txt_value.Text));
break;
case 3:
txt_result.Text = //将十进制转为十六进制
new Transform().TenToSixteen(long.Parse(txt_value.Text));
break;
}
}
else
{
if (cbox_select.SelectedIndex == 1)//判断用户输入的是否为二进制数
{
switch (cbox_select2.SelectedIndex)
{
case 0:
txt_result.Text = //将二进制转为十进制
new Transform().BinaryToTen(long.Parse(txt_value.Text));
break;
case 1:
txt_result.Text = txt_value.Text;//将二进制转为二进制
break;
case 2:
txt_result.Text = //将二进制转为八进制
new Transform().BinaryToEight(long.Parse(txt_value.Text));
break;
case 3:
txt_result.Text = //将二进制转为十六进制
new Transform().BinaryToSixteen(long.Parse(txt_value.Text));
break;
}
}
else
{
if (cbox_select.SelectedIndex == 2)//判断用户输入的是否为八进制数
{
switch (cbox_select2.SelectedIndex)
{
case 0:
txt_result.Text = //将八进制转为十进制
new Transform().EightToTen(long.Parse(txt_value.Text));
break;
case 1:
txt_result.Text = //将八进制转为二进制
new Transform().EightToBinary(long.Parse(txt_value.Text));
break;
case 2:
txt_result.Text = txt_value.Text;//将八进制转为八进制
break;
case 3:
txt_result.Text = //将八进制转为十六进制
new Transform().EightToSixteen(long.Parse(txt_value.Text));
break;
else
{
MessageBox.Show(“请输入正确数值!”, “提示!”);//提示错误信息
}
}
else
{
switch (cbox_select2.SelectedIndex)
{
case 0:
txt_result.Text = //将十六进制转为十进制
new Transform().SixteenToTen(txt_value.Text);
break;
case 1:
txt_result.Text = //将十六进制转为二进制
new Transform().SixteenToBinary(txt_value.Text);
break;
case 2:
txt_result.Text = //将十六进制转为八进制
new Transform().SixteenToEight(txt_value.Text);
break;
case 3:
txt_result.Text = //将十六进制转为十六进制
txt_value.Text;
break;
八进制转十六进制输出结果:
在这里插入图片描述

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值