• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#进制转换

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

最近用到 进制间的转换,之前每次都从网上查,现在整理一下,以备查阅。上代码:

 1 private static void Test()
 2         {
 3             //十进制 转 二进制字符串 
 4             Console.WriteLine(Convert.ToString(69, 2));
 5 
 6             //十进制 转 十六进制字符串  
 7             //方式1:
 8             Console.WriteLine(Convert.ToString(69, 16));
 9             //方式2:
10             int number = 69;
11             String hex = number.ToString("X");
12 
13             //二进制字符串 转 十进制数
14             Console.WriteLine(Convert.ToInt32("11111111", 2));
15 
16             //二进制字符串 转 十六进制数 (其实还是先转十进制数)
17             Console.WriteLine(string.Format("{0:x}",Convert.ToInt32("11111111",2)));
18 
19             //十六进制字符串 转 十进制数
20             //方式1:
21             Console.WriteLine(Convert.ToInt32("FF", 16));
22             //方式2:
23             int.Parse("FF",System.Globalization.NumberStyles.AllowHexSpecifier);
24 
25             //十六进制转二进制字符串
26             Console.WriteLine(Convert.ToString(0xff, 2));
27         }

  由于二进制数在C#中无法直接表示,所以所有二进制数都用一个字符串来表示,比如:“1011”。

  有些时候需要在二进制字符串前面补0,来达到指定的长度,比如将"111" 转成8个长度的 "00000111" 字符串。提供以下方法进行转换:

 1         private static void Test2()
 2         {
 3             int i=10;
 4             //方法1:
 5             Console.WriteLine(i.ToString("D8"));
 6             //输出: 00000010
 7 
 8 
 9             //方法2:
10             Console.WriteLine(i.ToString("00000000"));
11             //输出: 00000010
12 
13 
14             //方法3:推荐 
15             Console.WriteLine(Convert.ToString(i, 2).PadLeft(8, '0'));
16             //输出: 00001010
17         }  

  呵呵,有不对的地方,请指出~~ :)

  

  


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap