【问题标题】:Divide hex characters分割十六进制字符
【发布时间】:2013-06-19 00:43:04
【问题描述】:
我需要帮助来划分像这样的十六进制字符。我知道这行不通。如果我输入 418,我的答案应该是 20C。我正在使用 C# 谢谢
private void button23_Click(object sender, EventArgs e) //calculator
{
{
offset = textBox10.Text;
offset hex / 2 = offset2
textBox11.Text = offset2;
}
}
【问题讨论】:
标签:
c#
hex
character
divide
【解决方案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)。
【解决方案2】:
您可以使用int.Parse 将您的十六进制字符串转换为int,对其执行您需要的任何算术运算,然后使用ToString 将其转换回十六进制字符串。
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;