C# 如何将0x8080转换为8080 int?

C# 如何将0x8080转换为8080 int?,c#,.net,bit-manipulation,C#,.net,Bit Manipulation,我是怎么做到的 inta=0x8080 有可能将其转换为 intb=MagicMethod(a)//输出:8080编辑根据您的编辑,我必须说不可能。尝试将十六进制值转换为相应的int值。这仅适用于不包含十六进制数字“A”到“F”的十六进制值。如果你仅限于此,你可以做到 private int MagicConvert(int value) { string intValue = value.ToString("X"); int result = 0; for (int i

我是怎么做到的

inta=0x8080

有可能将其转换为


intb=MagicMethod(a)//输出:8080

编辑根据您的编辑,我必须说不可能。尝试将十六进制值转换为相应的int值。这仅适用于不包含十六进制数字“A”到“F”的十六进制值。如果你仅限于此,你可以做到

private int MagicConvert(int value)
{
    string intValue = value.ToString("X");
    int result = 0;
    for (int i = 1; i <= intValue.Length; i++)
    {
        int digit;
        if (!int.TryParse(intValue.Substring(intValue.Length - i, 1), out digit))
        {
            throw new ArgumentException("Hex value contains digits in the range of 'A' to 'F'.");
        }
        result += (int)Math.Pow(10, i - 1) * digit;
    }
    return result;
}
private int MagicConvert(int值)
{
字符串intValue=value.ToString(“X”);
int结果=0;
对于(int i=1;i如果您有一个字符串“0x8080”并希望将其转换为整数0x8080,则可以执行以下操作:

string s = "0x8080";
uint x = uint.Parse(s.Substring(2), System.Globalization.NumberStyles.AllowHexSpecifier);

更新他在上面写道:“实际上,我收到了类似于0x808800的东西,我需要将其转换为#808080以用于表单背景色。”这对我来说意味着他需要将整数0x808000转换为颜色,可以使用
Color.FromArgb
(请参阅).

您可以像这样将数字转换为十六进制:
0x8080.ToString(“x6”)

6
是小数位数


有关更多详细信息,请参阅。

您的意思是不是
0x8080
?您想做什么?是否有包含“0x8080”的字符串你想把它转换成一个值为0x8080的整数吗?你能解释一下你想实现什么吗?0x8080和8080之间的关系是什么?你的问题没有意义。请提供更多的上下文。(或数据类型)现在不是毫无意义的,而是错误的。这不是你想要做的。我正要发布这个。我想他需要和integer返回。虽然很难说清楚。确实如此。非常感谢!下次,请确切说明你想要什么。如果你问到如何将
int
转换为十六进制字符串,你会立即得到这个答案(可能有五个)