转换类

//十进制转二进制

Console.WriteLine(Convert.ToString(69, 2));

//十进制转八进制

Console.WriteLine(Convert.ToString(69, 8));

//十进制转十六进制

Console.WriteLine(Convert.ToString(69, 16));

//二进制转十进制

Console.WriteLine(Convert.ToInt32(”100111101″, 2));

//八进制转十进制

Console.WriteLine(Convert.ToInt32(”76″, 8));

//C# 16进制转换10进制

Console.WriteLine(Convert.ToInt32(”FF”, 16));
    /// <summary>
    /// 转换类
    /// </summary>
    public class ConvertHelper
    {
        /// <summary>
        /// 解四字节浮点数
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public static float ByteToFloat(string input)
        {
            if (string.IsNullOrEmpty(input)) return -999;

            var result = -999;

            try { BitConverter.ToSingle(HexStringToBytes(input), 0); }
            catch { }

            return result;
        }

        /// <summary>
        /// 字符串转换成十六进制数
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public static string StringToHex(string input)
        {
            if (string.IsNullOrEmpty(input)) return "";

            return BitConverter.ToString(ASCIIEncoding.Default.GetBytes(input)).Replace("-", "");
        }

        /// <summary>
        /// 将字符串转换成字节数组
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public static byte[] StringToBytes(string input)
        {
            if (string.IsNullOrEmpty(input)) return null;

            return System.Text.Encoding.Default.GetBytes(input);
        }

        /// <summary>
        /// 将十六进制数转换成字节数组
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public static byte[] HexStringToBytes(string input)
        {

            input = Regex.Replace(input, " ", "");

            if (input.Length <= 0)
            {
                return null;
            }
            //若为一位,则在前面补0
            if (input.Length == 1)
            {
                input = "0" + input;
            }

            byte[] bytes = new byte[input.Length / 2];

            try
            {
                for (int i = 0; i < input.Length; i += 2)
                {
                    if (!byte.TryParse(input.Substring(i, 2), NumberStyles.HexNumber, null, out bytes[i / 2]))
                    {
                        bytes[i / 2] = 0;
                    }
                }
            }
            catch { }

            return bytes;
        }

        /// <summary>
        /// 将十六进制数转换为十进制整数
        /// </summary>
        /// <param name="number"></param>
        /// <returns></returns>
        public static Int32 HexToInt32(string number)
        {
            Int32 result = -999;

            try { result = Convert.ToInt32(number, 16); }
            catch { }

            return result;
        }

        /// <summary>
        /// 将十六进制数转换成字符串
        /// </summary>
        /// <param name="input"></param>
        /// <returns></returns>
        public static string HexToString(string input)
        {
            var result = "";

            try { ASCIIEncoding.Default.GetString(HexStringToBytes(input)); }
            catch { }

            return result;
        }

        /// <summary>
        /// 尝试解科学记数
        /// </summary>
        /// <param name="input">要转换的数</param>
        /// <param name="number">转换后的数</param>
        /// <returns></returns>
        public static bool TryParseToDecimal(object input, out decimal number)
        {
            number = -999;

            try { number = Decimal.Parse(input.ToString(), System.Globalization.NumberStyles.Float); }
            catch { return false; }

            return true;
        }
    }
原文地址:https://www.cnblogs.com/baiqjh/p/2844472.html