我想改变c#中的CultureInfo.CurrentCulture.NumberFormat.NumberDecima



我正在使用visual studio 2019。当我使用双精度时,它使用","而不是"!"。如果我使用"。",就会出现错误。我搜索了一下,我可以改变它但是我想改变它的内部设置这样它会自动使用"。"而不是","

这是我使用的代码。

double d = double.Parse(Console.ReadLine());
Console.WriteLine(d);

,如果我输入4.6(带。的十进制),它会得到这个错误。

Unhandled exception. System.FormatException: Input string was not in a correct format.
at System.Number.ThrowOverflowOrFormatException(ParsingStatus status, TypeCode type)
at System.Double.Parse(String s)
at project3.Program.Main(String[] args) in C:Usersa2bmesourcereposproject3Program.cs:line 9

,但4,6工作良好。我曾经使用过其他语言,并且习惯了";.&"。

编辑:

我知道CultureInfo.InvariantCulture,想要一种不用每次都用的方法。

If ";是有效的,并且"无效一个简单的解决方案是这样的。现在你可以输入4.5或4,5,两者都可以。

using System;

public class Program
{
public static void Main()
{
var input = Console.ReadLine().Replace(".", ",");
double d = double.Parse(input);
Console.WriteLine(d);
}
}

最新更新