Конвертация ToUint32 - C#

Узнай цену своей работы

Формулировка задачи:

допустим, я хочу получить из текстбокса строчку и записать ее в значение Uint32
k[0] = Convert.ToUInt32(textBoxKey1.Text);
если строчка будет 12345, то все нормально. Но у меня текстовая строка вида HEX, т.е. может быть 123ABCD. Как правильно перегрузить этот метод, чтобы он понимал вид HEX?

Решение задачи: «Конвертация ToUint32»

textual
Листинг программы
static string bukv = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
 
        static void Main(string[] args)
        {
            string l = Console.ReadLine();
            uint i = Convert.ToUInt32(FromN(l, "16"));
            Console.WriteLine(i.ToString());
            Console.ReadLine();
        }
 
        private static string FromN(string number, string sys)
        {
            int newNum = 0;
            string temp = "";
            int t;
            int i;
            for (i = 0; i < number.Length; i++)
            {
                temp = "";
                temp += newCh(number.Substring(i, 1), "from");
                t = (int)Math.Pow(Convert.ToDouble(sys), Convert.ToDouble(number.Length - (i + 1)));
                newNum += Convert.ToInt32(temp) * t;
            }
            return newNum.ToString();
        }
 
        static string newCh(string sym, string otk)
        {
            string s = "";
            if (otk == "to")
            {
                if (Convert.ToInt32(sym) > 10)
                    s += bukv.Substring(Convert.ToInt32(sym) - 10, 1);
                else
                    s += sym;
            }
            else if (otk == "from")
            {
                if (bukv.IndexOf(sym) == -1)
                    s += sym;
                else
                    s += (bukv.IndexOf(sym) + 10).ToString();
            }
            return s;
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.857 из 5