如何把16进制字符串转换成浮点型数据?例如16进制字符串9E97代表什么

解决方案 »

  1.   

    float value=0.0;
    float.TryParse('9E97',NumberStyles.HexNumber,null,out value)
    这个方法签名大概就这样
      

  2.   


         string str = "9E97"; 
            uint num = uint.Parse(str, System.Globalization.NumberStyles.AllowHexSpecifier);
            byte[] btFlt = BitConverter.GetBytes(num);
            float ftNum = BitConverter.ToSingle(btFlt, 0);
            Response.Write(ftNum); 
            结果是:5.689132E-41 
      

  3.   

    不知道您说的是不是这个意思///
    ///该方法是将一个表示用16进制表示发表示的一个数字的16进制字符串转换成10进制数的方法
    ///
    public int HexToDecimal(string hexStr)
    {
        return Convert.ToInt32(hexStr, 16);
    }public void Test()
    {
        Console.WriteLine("将9E97转换成十进制数为:"+HexToDecimal("9E97"));
    }
      

  4.   

    0x9E97就代表的是一个整数,只不过用十六进制表示的,实质上还是整数,如果是9E97字符串的话,就将这个字符串转换成整数,就是一个数值。0x9E97表示一个整数,而不是一个字符串