如何指定我的decimal.Parse必须始终期望接收带有'.'的字符串.像"4.75"无关电脑的系统设置是什么?
我正在读取excel的文件,它给了我一个'.'的价值.我看到,如果我在我的笔记本电脑上运行我的程序它会抛出错误,因为它期望','
我可以用:
string tmp1 = tmp[2].Replace('.', ',');
Run Code Online (Sandbox Code Playgroud)
但很明显,如果我的电脑想要一个''.那么它会给出一个错误.
什么是我最好的选择?
Dus*_*gen 11
看到: Double.Parse
使用此重载来指定IFormatProvider您的案例CultureInfo.InvariantCulture.
var value = double.Parse(tmp[2], CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)
但是,Double.TryParse如果您打算让您的工艺持久耐用,我会建议您这样做.
double value;
if(!double.TryParse(tmp[2],
NumberStyles.None,
CultureInfo.InvariantCulture,
out value))
{
// error handling
}
Run Code Online (Sandbox Code Playgroud)
使用Double.Parse Method (String, IFormatProvider)与 CultureInfo.InvariantCulture解析.
double d = double.Parse("2.2", CultureInfo.InvariantCulture);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7390 次 |
| 最近记录: |