我对C#
,.NET
很新,并且在Windows上编程。
这是我的代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Globalization;
namespace MyApp
{
class Program
{
static void Main(string[] args)
{
string lineBreak = "\r\n";
string str = Console.ReadLine();
double number = double.Parse(str, CultureInfo.InvariantCulture);
Console.WriteLine("You've entered: " + number + lineBreak + "Variable type:" +number.GetType());
Console.WriteLine("Press any key to exit . . .");
Console.Read();
}
}
}
如果我像这样输入double
"32,45"
(注意有一个逗号作为分隔符),那么我得到如下输出:
You've entered: 32,45
Variable type: System.Double
但是当我输入double
这样的变量"32.45"
时(注意,有点而不是逗号),那么我得到这样的输出:
You've entered: 32,45
Variable type: System.Double
它是一样的。我知道这是因为我在本地机器上设置了CultureInfo。
如何让它独立(不改变我的设置或内容,但完全在我的代码中?所以当用户打开我的程序时,他不应该在他的设置中更改任何内容)?
就像当我输入点时,它会输出带点的双精度,当我输入逗号时它会显示逗号?
最好的问候,Pāvels。