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";
            }
        }
相关推荐
yngsqq几秒前
Vlookup用法
c#
『昊纸』℃5 分钟前
C语言学习心得集合 篇1
c语言·算法·编程基础·学习心得·实践操作
云深麋鹿6 分钟前
C++ | 继承
开发语言·c++
小辉同志11 分钟前
Epoll+线程池
开发语言·c++·c·线程池·epoll
史迪仔011211 分钟前
[QML] Qt Quick Dialogs 模块使用指南
开发语言·前端·c++·qt
Chase_______11 分钟前
LeetCode 1456:定长子串中元音的最大数目
算法·leetcode
小O的算法实验室12 分钟前
2026年IEEE IOTJ,DNA序列启发相似性驱动粒子群算法+无人机与基站部署,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
谭欣辰12 分钟前
Floyd算法:动态规划解最短路径
c++·算法·图论
杨凯凡12 分钟前
【019】IO/NIO 概念:Web 开发要掌握到什么程度
java·开发语言·nio
计算机安禾13 分钟前
【Linux从入门到精通】第12篇:进程的前后台切换与信号控制
linux·运维·算法