首页 > 代码库 > C# 十进制和十六进制转换

C# 十进制和十六进制转换

转至:http://www.cnblogs.com/fwind/archive/2012/04/13/2445380.html

 

在C#中,十进制和十六进制转换非常简单,方法如下:

十进制转为十六进制:

int a = 100;String strA = a.ToString("x8");

十六进制转为十进制:

int b= Int32.Parse("266", System.Globalization.NumberStyles.HexNumber);

 也可以使用下述方法:

/// <summary>        /// 十六进制换算为十进制        /// </summary>        /// <param name="strColorValue"></param>        /// <returns></returns>        public static int GetHexadecimalValue(String strColorValue)        {            char[] nums = strColorValue.ToCharArray();            int total = 0;            try            {                for (int i = 0; i < nums.Length; i++)                {                    String strNum = nums[i].ToString().ToUpper();                    switch (strNum)                    {                        case "A":                            strNum = "10";                            break;                        case "B":                            strNum = "11";                            break;                        case "C":                            strNum = "12";                            break;                        case "D":                            strNum = "13";                            break;                        case "E":                            strNum = "14";                            break;                        case "F":                            strNum = "15";                            break;                        default:                            break;                    }                    double power = Math.Pow(16, Convert.ToDouble(nums.Length - i - 1));                    total += Convert.ToInt32(strNum) * Convert.ToInt32(power);                }            }            catch (System.Exception ex)            {                String strErorr = ex.ToString();                return 0;            }            return total;        }

 

C# 十进制和十六进制转换