我想验证数字,我只知道小数点分隔符(点或逗号)
例如 1:n1=12.4 和 n2=1,234.5 -> 两者都对 '.' 有效 作为小数分隔符,对于“,”作为小数分隔符都无效。
例如 2:n1=12,4 和 n2=1.234,5 -> 都对 ',' 作为小数分隔符有效,对 '.' 都无效 作为小数分隔符。
到目前为止我尝试了什么?
CultureInfo cultureInfo = CultureInfo.InvariantCulture.Clone() as CultureInfo;
cultureInfo.NumberFormat.NumberDecimalSeparator = myDecimalSeparator;
并使用
decimal.Parse(stringValue, cultureInfo);
- 例如 1 + '.' => 两者都有效
- eg1 + ',' => 都抛出异常 OK
- eg2 + ',' => n1 抛出异常 OK , n2 抛出异常 WRONG
- 例如 2 + '.' => n1 是 124 错误,n2 抛出异常 OK
你建议我做什么?