很多时候需要使用到进制转换 经常使用的有:
2转10 10转16 进制
C#中这已经给封装好了 直接使用就可以了
不需要自己写 这就是高级语言的好处
编写进制转换工具:
二进制转十进制:
string str =Console.ReadLine(); //键盘输入 Console.WriteLine(Convert.ToInt32(str, 2));//输出结果
非常简单只有简单的一行
效果:
需要注意的是键盘输入必须得是 字符串(string)类型的 不然就会报错
十进制转二进制:
int n =Convert.ToInt32(Console.ReadLine()); Console.WriteLine(Convert.ToString(n, 2));
进去的是int出来的是string
效果图:
十进制转八进制:
int n = Convert.ToInt32(Console.ReadLine()); Console.WriteLine(Convert.ToString(n, 8));
都是大同小异
效果图:
十进制转十六进制:
int n =Convert.ToInt32(Console.ReadLine()); Console.WriteLine(Convert.ToString(n, 16));
进去的类型是int 出的是string
效果图:
十六进制转二进制:
Console.WriteLine(Convert.ToString(0xa, 2));
效果图:
16进制a转成二进制为 1010
十六进制转十进制:
string str =Console.ReadLine(); Console.WriteLine(Convert.ToInt32(str,16));
八进制转十进制:
string str =Console.ReadLine(); Console.WriteLine(Convert.ToInt32(str,8));
效果图:
方法都是大同小异,简单的一行
例子:
使用窗体应用编写进制转换小工具
代码写在文本框的事件下 这样就不需要点击按钮就可以计算
代码:
try { int n = Convert.ToInt32(textBox1.Text); label5.Text = Convert.ToString(n,2); } catch { label5.Text = "不是二进制数字"; } //10转2 try { int n = Convert.ToInt32(textBox1.Text); label6.Text =Convert.ToString(n, 8); } catch { label6.Text = "不是八进制数字"; } //10转8 try { int n = Convert.ToInt32(textBox1.Text); label7.Text = Convert.ToString(n, 16); } catch { label7.Text = "不是十六进制数字"; } //10转16 try { int n = Convert.ToInt32(textBox1.Text); label8.Text = Convert.ToString(n,2); } catch { label8.Text = "不是二进制进制数字"; } //2转10
纯手打,点个赞呗~