| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 549 人关注过本帖
标题:[转载]C#中的进制转换问题
只看楼主 加入收藏
live41
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:67
帖 子:12442
专家分:0
注 册:2004-7-22
结帖率:66.67%
收藏
 问题点数:0 回复次数:1 
[转载]C#中的进制转换问题
前一阶段,遇到了一个将int型数字转换成2进制显示的问题。如:8 -> 1000要求输入8就出现结果1000;输入13就出现1101。

以前没有遇到过此类问题,初一接触,第一反应就是C#必有解决此问题的方法可以直接调用。

本以为在Convert.的方法里可以直接ToBinary或是类似的处理,但经查找无此方法,于是想也许有其他方法重载了或派生了解决此问题的方法。

经查找,果然在ToString()的系列方法中有解决此问题的重载。
具体应用如:int a=13; Convert.ToString(a,2); 其中的2指转换成的基本类型是2进制类型。这样转换后就得到了1101的字符串。
同理还可以进行其他的多种进制转化。

网上搜了一下,相关的进制转换大概有以下方法(没有全部验证过):

///<summary>
///不同进制的数字之间的转换方法。
///int.Parse\Convert.ToString\BitConverter.ToString
///</summary>

//十六进制(string)转化为十进制(int)
int i = 0xA1 ;//ASCII码A1转化为对应值 可以:string thevalue = (char) 0xA1 ;

//十进制(int)转化为十六进制(string)
int a = 188;
TextBox1.Text=a.ToString("X4") ;

//十六进制(string)转化为十进制(int)
int b = int.Parse("AB", System.Globalization.NumberStyles.HexNumber);

//十进制(int)转化为十六进制(string)
j = 10;
string strBase16 = Convert.ToString(j,16);

//十六进制(string)转化为十进制(int)
string strBase16 = "A";
int j = Convert.ToInt32(strBase16,16);

//二进制(string)转化为十进制(int)
string bin = "1110" ;
int dec= Convert.ToInt16( bin , 2 ) ;
dec.ToString ( ) ;

//十进制(int)转化为二进制(string)
int j = 10;
string strBase2 = Convert.ToString(j,2);
DataAccess.common.setMessage( strBase2 ) ;

//十进制(int)转化为二进制(string)
int dec= 14 ;
sting bin = ConvertToBin ( dec ) ;// dec/2 = "1110"

//BitConverter转化
bytes = System.Text.Encoding.Default.GetBytes( "12Paladin2" ) ;
MessageBox.Show ( BitConverter.ToString( bytes ) ) ; // 31-32-50-61-6C-61-64-69-6E-32

//字节(byte)转化为十六进制(string)
Convert.ToString ( bytes[0+1] , 16 ) ;

//&Hff转化为如255的存放在byte中
byte.Parse ( Convert.ToInt32( '\xff' )).ToString( ) ) ;

//byte中bit操作
int[] hello = new int[1];
hello[0] = 1;
System.Collections.BitArray kao = new BitArray(hello);
bool **** = kao[0];

搜索更多相关主题的帖子: 进制 
2006-03-10 09:22
live41
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:67
帖 子:12442
专家分:0
注 册:2004-7-22
收藏
得分:0 
工作时用的,转载上来。
2006-03-10 09:22
快速回复:[转载]C#中的进制转换问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.030714 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved