如何检查字符串可转换 int?

假设我们有像“House”,“50”,“Dog”,“45.99”这样的数据,我想知道我是否应该只使用字符串或使用改为解析 int 值。

在JavaScript中,我们有 parseInt()函数。如果无法解析字符串 ,则会返回 NaN

有帮助吗?

解决方案

Int32.TryParse(String,Int32) - http://msdn.microsoft.com/en-us/library/f02979c7.aspx

  bool result = Int32.TryParse(value, out number);
  if (result)
  {
     Console.WriteLine("Converted '{0}' to {1}.", value, number);         
  }

其他提示

通过将tryparse直接运行到if?

,你能不能让它更优雅一点

像这样:

if (Int32.TryParse(value, out number))     
  Console.WriteLine("Converted '{0}' to {1}.", value, number);

Int.TryParse

在其中一个搜索结果中发现了这一点:如何识别字符串是否为数字?

添加此项,因为我之前看到的答案没有用处:

int n;
bool isNumeric = int.TryParse("123", out n);

这里" 123" 可以是OP正在测试的字符串 s =" 123" ,值 n 将是如果发现它是数字,则在调用后有一个值( 123 )。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top