如何从一个字符串中设置一​​个十六进制整数文字,整数、字符串、文字、个十六进制

2023-09-03 01:46:31 作者:咿呀咿呀哟

林试图加载一个十六进制文字从一个XML设置文件,我可以解析XML只是罚款,并从文件中获得所需要的字符串,

但我似乎无法得到它来设置一个int变量值:/

code:

  INT PlayerBaseAddress = System.Convert.ToInt32(ConfigLoader.GetSetting(PlayerBaseAddress));
    //输入字符串的不正确的格式。

    公共静态字符串GetSetting(字符串VAL)
    {
       //这个负载从XML文件中,pretend它很难codeD返回0x17EAAF00的字符串
    }

    INT PlayerBaseAddress = 0x17EAAF00; //这工作。
 

解决方案

您必须字符串的基地提供给重载方法的 Convert.ToInt32(字符串值,的Int32 fromBase)

 的Int32值= Convert.ToInt32(十六进制串,16);
 

Im attempting to load a hex literal from an xml settings file, I can parse the xml just fine and get the required string from the file,

but i cant seem to get it to set an int variables value :/

Code:

    int PlayerBaseAddress = System.Convert.ToInt32(ConfigLoader.GetSetting("PlayerBaseAddress"));
    // Input string was not in a correct format.

    public static string GetSetting(string Val)
    {
       // This loads from the xml file, Pretend its hardcoded to return a string of 0x17EAAF00
    }

    int PlayerBaseAddress = 0x17EAAF00; // This works.

解决方案

You have to supply the base of the string to the overloaded method Convert.ToInt32(String value, Int32 fromBase).

Int32 value = Convert.ToInt32(hexString, 16);