除以十六进制字符

时间:2013-06-19 00:43:04

标签: c# hex character divide

我需要帮助来划分这样的十六进制字符。我知道这不起作用。如果我输入418,我的答案应该是20C。我正在使用C#谢谢

private void button23_Click(object sender, EventArgs e)  //calculator
    {

        {
            offset = textBox10.Text;

           offset hex / 2 = offset2


            textBox11.Text = offset2;

        }
    }

2 个答案:

答案 0 :(得分:1)

NumberStyles有点深奥但是你是这样做的:

int offset = int.Parse(textBox10.Text, System.Globalization.NumberStyles.HexNumber);
int offset2 = offset / 2;
textBox11.Text = String.Format("{0:X}", offset2);

当然,您可能需要对用户输入进行更多处理和验证。查看int.TryParse和不同的int尺寸(例如Int64)。

答案 1 :(得分:0)

您可以使用int.Parse将十六进制字符串转换为int,执行您需要的任何算术运算,然后使用ToString将其转换回十六进制字符串。< / p>

string offset = textBox10.Text;
int val = int.Parse(offset, System.Globalization.NumberStyles.HexNumber);
int div = val / 2;
string offset2 = div.ToString("X");
textBox11.Text = offset2;