C# 单个函数实现各进制数间转换

一个函数实现2,8,10,16进制之间的转换,需要输入原值、原值进制、目标进制,之后以字符串形式返回。

cs 复制代码
        /// <summary>
        /// 实现各进制数间的转换。ConvertBase("15",10,16)表示将十进制数15转换为16进制的数。
        /// </summary>
        /// <param name="value">要转换的值,即原值</param>
        /// <param name="from">原值的进制,只能是2,8,10,16四个值。</param>
        /// <param name="to">要转换到的目标进制,只能是2,8,10,16四个值。</param>
        public static string ConvertBase(string value, int from, int to)
        {
            try
            {
                int intValue = Convert.ToInt32(value, from);  //先转成10进制
                string result = Convert.ToString(intValue, to);  //再转成目标进制
                if (to == 2)
                {
                    int resultLength = result.Length;  //获取二进制的长度
                    switch (resultLength)
                    {
                        case 7:
                            result = "0" + result;
                            break;
                        case 6:
                            result = "00" + result;
                            break;
                        case 5:
                            result = "000" + result;
                            break;
                        case 4:
                            result = "0000" + result;
                            break;
                        case 3:
                            result = "00000" + result;
                            break;
                    }
                }
                return result;
            }
            catch
            {

                //LogHelper.WriteTraceLog(TraceLogLevel.Error, ex.Message);
                return "0";
            }
        }
相关推荐
小熊Coding几秒前
Python二手房数据可视化分析+预测+推荐
开发语言·python·信息可视化·django·计算机毕业设计·二手房数据分析·二手房数据可视化分析
疯狂打码的少年几秒前
JDK 7、8、13 和 20区别深度了解
java·开发语言
钝挫力PROGRAMER1 分钟前
Java中如何优雅管理接口的多个实现
java·设计模式
_深海凉_5 分钟前
LeetCode热题100-单词拆分
算法·leetcode·职场和发展
Sayuanni%35 分钟前
五层网络模型-应用层
开发语言·网络·php
迷藏4945 分钟前
# 发散创新:基于Python的自动特征工程实战与深度优化在机器学习
java·开发语言·python·机器学习
wearegogog1235 分钟前
基于蚁群算法的无人机三维航路规划(MATLAB实现)
算法·matlab·无人机
fie88896 分钟前
多IEEE标准系统潮流计算程序(MATLAB实现)
开发语言·matlab
星晨雪海10 分钟前
查询区域列表并统计点位数量
java
Seven9710 分钟前
用300行代码手写一个mini版的Tomcat
java