十进制转任意进制

存个档;

    //十进制转成任意进制
    private static string GetCusSN(int num, int strLen, string serialChars) {
        int slen = serialChars.Length;
        if (num > Math.Pow(slen, strLen) - 1) return "-1";
        string sn = "";
        if (num <= slen - 1) sn = serialChars.Substring(num, 1);
        else {
            while (num > slen - 1) {
                int remainder = num % slen;
                num /= slen;
                sn = serialChars.Substring(remainder, 1) + sn;
                if (num <= slen - 1) sn = serialChars.Substring(num, 1) + sn;
            }
        }
        return sn.PadLeft(strLen, serialChars[0]);
    }

    //十进制左边补0
    private static string GetDecSN(int num, int decLen) {
        if (num > Math.Pow(10, decLen) - 1) return "-1";
        else return $"{num}".PadLeft(decLen, '0');
    }

 

posted @ 2022-11-30 10:39  enif  阅读(35)  评论(0编辑  收藏  举报
豫ICP备2021034901号