/// <summary> /// 判断字符串是否可以转化为数字 /// </summary> /// <param name="str">要检查的字符串</param> /// <returns>true:可以转换为数字;false:不是数字</returns> public static bool IsNumberic(string str) { double vsNum; bool isNum; isNum = double.TryParse(str, System.Globalization.NumberStyles.Float, System.Globalization.NumberFormatInfo.InvariantInfo, out vsNum); return isNum; }
小注:
Double.TryParse 方法 (String, NumberStyles, IFormatProvider, Double)
将指定样式和区域性特定格式的数字的字符串表示形式转换为它的等效双精度浮点数。一个指示转换是否成功的返回值。
public static bool TryParse ( string s, NumberStyles style, IFormatProvider provider, out double result )
参数:
s:包含要转换的数字的字符串。
style:NumberStyles 值的按位组合,指示 s 允许使用的格式。一个用来指定的典型值为 Float 与AllowThousands 的组合。
provider:一个 IFormatProvider,它提供有关 s 的区域性特定格式设置信息。
result:当此方法返回时,如果转换成功,则包含与 s 中所包含的数值或符号等效的双精度浮点数;如果转换失败,则包含零。如果 s 参数为空引用(在 Visual Basic 中为Nothing),其格式不符合 style,表示的数字小于 MinValue 或大于 MaxValue,或者 style 不是 NumberStyles 枚举的常数的有效组合,则转换失败。该参数未经初始化即被传递。
返回值
如果 s 成功转换,则为 true;否则为 false。