进制转换

2014-10-24 16:39:04  访问(1813) 赞(0) 踩(0)

  • 
    
            /// <summary>
            /// 10进制转成16进制
            /// </summary>
            /// <param name="i"></param>
            /// <returns></returns>
            public   string ConvertHex(int i)
            {
                return ConvertNumber(i.ToString(), 10, 16);
            }
    
            /// <summary>
            /// 10进制转成16进制
            /// </summary>
            /// <param name="str"></param>
            /// <returns></returns>
            public   string ConvertHex(string str)
            {
                return ConvertNumber(str, 10, 16);
            }
    
            /// <summary>
            /// 16进制输入返回对应的整型值
            /// </summary>
            /// <param name="str"></param>
            /// <returns></returns>
            public   int HexReturn(string str)
            {
                return int.Parse(ConvertNumber(str, 16, 10));
            }
    
            /// <summary>
            /// 10进制转成8进制
            /// </summary>
            /// <param name="str"></param>
            /// <returns></returns>
            public   string ConvertOct(string str)
            {
                return ConvertNumber(str, 10, 8);
            }
    
            /// <summary>
            /// 10进制转成8进制
            /// </summary>
            /// <param name="i"></param>
            /// <returns></returns>
            public   string ConvertOct(int i)
            {
                return ConvertNumber(i.ToString(), 10, 8);
            }
    
            /// <summary>
            /// 进制转换
            /// </summary>
            /// <param name="str"></param>
            /// <param name="from"></param>
            /// <param name="to"></param>
            /// <returns></returns>
            public   string ConvertNumber
                (
                    string str,
                    int from,
                    int to
                )
            {
                if (str == null || str.Length == 0)
                    return "";
    
                if (from == to)
                    return str;
    
                string strResult = string.Empty;
    
                if (from == 10)
                {
                    int iValue = int.Parse(str);
    
                    strResult = Convert.ToString(iValue, to);
    
                    return strResult;
                }
                else
                {
                    if (to == 10)
                    {
                        strResult = Convert.ToInt32(str, from).ToString();
    
                        return strResult;
                    }
                    else
                    {
                        strResult = ConvertNumber(str, from, 10);
    
                        strResult = ConvertNumber(strResult, 10, to);
    
                        return strResult;
                    }
    
                }
    
                ////十进制转二进制
                //Response.Write("十进制166的二进制表示: " + Convert.ToString(166, 2));
                ////十进制转八进制
                //Response.Write("十进制166的八进制表示: " + Convert.ToString(166, 8));
                ////十进制转十六进制
                //Response.Write("十进制166的十六进制表示: " + Convert.ToString(166, 16));
    
                ////二进制转十进制
                //Response.Write("二进制 111101 的十进制表示: " + Convert.ToInt32("111101", 2));
                ////八进制转十进制
                //Response.Write("八进制 44 的十进制表示: " + Convert.ToInt32("44", 8));
                ////十六进制转十进制
                //Response.Write("十六进制 CC的十进制表示: " + Convert.ToInt32("CC", 16)); 
            }
    


标签:进制转换    10进制转成16进制    8进制转2进制 

上一条:

下一条:


 

相关评论

评论加载中……
 

发表评论

类型:
内容:
  (Alt+Enter)