区域十进制分隔符输入
本文关键字:输入 分隔符 十进制 区域 | 更新日期: 2023-09-27 17:53:18
我国的计算机不接受带'的小数。'他们只接受','
我如何写一个程序,可以从控制台接受12.5作为十进制数?
使用CultureInfo
。如果你确定使用小数点是你国家的标准,那么使用你国家的CultureInfo
。您可以简单地检查它是否存在。
// Change kk-KZ to your culture code
decimal dec = decimal.Parse(str, new CultureInfo("kk-KZ"));
或者您可以使用InvariantCulture
和NumberStyles.Any
:
decimal dec = decimal.Parse(str, NumberStyles.Any, CultureInfo.InvariantCulture);
我将执行第二个,因为我不知道你是从哪里来的。
这是一个控制台应用程序,它为我工作:
public static void Main()
{
string str;
str = Console.ReadLine();
decimal dec = decimal.Parse(str, NumberStyles.Any, CultureInfo.InvariantCulture);
double db = double.Parse(str, NumberStyles.Any, CultureInfo.InvariantCulture);
Console.WriteLine(dec.ToString("F2", CultureInfo.InvariantCulture));
Console.WriteLine(db.ToString("F2", CultureInfo.InvariantCulture));
return;
}