【问题标题】:C# Hex String into Hex intC# 十六进制字符串转换为十六进制整数
【发布时间】:2017-08-12 13:26:37
【问题描述】:

有人可以编辑它以使其看起来更好吗?谢谢!

我试图有一个十六进制值的字符串,但它是由第三方(不是代码本身)设置的,并将它设置回一个 int 但仍然是一个十六进制值。如果前面有 0x,C# 会让你有一个等于 Hex 的 int。

代码:

string HexValue = "0x0FC";
int OtherValue = Convert.ToInt(HexValue);

当我尝试这个时,我得到:'输入字符串的格式不正确。'

【问题讨论】:

标签: c# string int hex


【解决方案1】:

您可以通过添加此System.Globalization.NumberStyles.HexNumber 将字符串转换为 int 十六进制值:

string HexValue = "0x0FC";
int OtherValue = int.Parse(HexValue.Substring(2),System.Globalization.NumberStyles.HexNumber);

希望对你有帮助!

【讨论】:

  • 不得不取消我的投票,因为您没有运行代码。它不适用于前面的0x
  • 糟糕,更新了我的答案。您不允许传递带有前导“0x”的字符串,因此您应该通过子字符串将其删除。
  • @mindOfAi 好的,这不是发布新东西,而是我将如何做到这一点?:字符串值 = "0.0F";浮动新值 = 值;
  • 你可以这样做:string Value = "0.2F"; float NewValue = float.Parse(Value.TrimEnd('F'));
猜你喜欢
  • 2018-01-31
  • 2015-11-29
  • 2018-01-22
  • 2015-04-30
  • 1970-01-01
  • 2014-03-19
  • 2010-10-16
相关资源
最近更新 更多