• js和C#中的进制转换方法


    .net Framework中,System.Convert类中提供了较为全面的各种类型、数值之间的转换功能。其中的两个方法可以轻松的实现各种进制的数值间的转换:

    Convert.ToInt32(string value, int fromBase):

    可以把不同进制数值的字符串转换为数字,其中fromBase参数为进制的格式,只能是2、8、10及16:

    如Convert.ToInt32(”0010”,2)执行的结果为2;

    Convert.ToString(int value, int toBase):

    可以把一个数字转换为不同进制数值的字符串格式,其中toBase参数为进制的格式,只能是2、8、10及16:

    如Convert.ToString(2,2)执行的结果为”0010”

    现在我们做一个方法实现各种进制间的字符串自由转换:选把它转成数值型,然后再转成相应的进制的字符串:

    public string ConvertString(string value, int fromBase, int toBase)

    {

      int intValue = Convert.ToInt32(value, fromBase);

      return Convert.ToString(intValue, toBase);
    }
    $ad$
    其中fromBase为原来的格式

    toBase为将要转换成的格式

    //十进制转二进制
    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));
    //十六进制转十进制
    Console.WriteLine(Convert.ToInt32(”FF”, 16));

    js实现方法
    function v10toX(n,m)
    {
    m=String(m).replace(/ /gi,"")
    if(m=="")return ""
    if(parseInt(m)!=m){M("请输入整数!");return ""}
    var t=""
    var a=ss.substr(0,n)
    while(m!=0)
    {
     var b=m%n
     t=a.charAt(b)+t
     m=(m-b)/n
    }
    return t
    }

    function vXto10(n,m)
    {
    m=String(m).replace(/ /gi,"")
    if(m=="")return ""
    var a=ss.substr(0,n)
    if(eval("m.replace(/["+a+"]/gi,'')")!=""){M("请输入"+n+"进制数!");return ""}
    var t=0,c=1
    for(var x=m.length-1;x>-1;x--)
    {
    t+=c*(a.indexOf(m.charAt(x)))
    c*=n
    }
    return t
    }


    function vXtoY(n,m,y)
    {
    a=vXto10(n*1,m)

    if(a=="")return ""
    a=v10toX(y,a)
    return a
    }

    http://www.knowsky.com/tools/ToolJinzhi.asp

  • 相关阅读:
    mybatis之关联关系映射
    spa项目开发之tab页实现
    mybatis整合redis实现二级缓存
    mybatis整合spring
    mybatis动态sql和分页
    Mybatis入门
    使用java代码操作redis
    Redis安装
    IDEA的安装和使用
    Linux入门——安装jdk、tomcat、MySQL以及项目部署
  • 原文地址:https://www.cnblogs.com/jacktu/p/794686.html
Copyright © 2020-2023  润新知