如何在简单计算器中将Console.ReadLine()转换为两倍?问题C#,例外情况
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何在简单计算器中将Console.ReadLine()转换为两倍?问题C#,例外情况相关的知识,希望对你有一定的参考价值。
所以...我使用了“ double.Parse”和“ Convert.ToDouble”并得到了相同的错误“ System.FormatException:“输入字符串的格式不正确。” ...当我在控制台“ 10.2”或任何双数字中编写时。我从教程中学习并逐步进行操作,但不知道如何解决。我使用的是Visual Studio
Console.Write("Enter a number: ");
double num1 = double.Parse(Console.ReadLine());
Console.Write("Enter operator: ");
string op = Console.ReadLine();
Console.Write("Enter a number: ");
double num2 = double.Parse(Console.ReadLine());
if (op == "+")
{
Console.Write(num1 + num2);
}
else if (op == "-")
{
Console.WriteLine(num1 - num2);
}
else if (op == "/")
{
Console.WriteLine(num1 / num2);
}
else if (op == "*")
{
Console.WriteLine(num1 * num2);
}
else
{
Console.WriteLine("Invalid Operator");
}
答案
问题可能是您的文化背景。一些国家使用.
,其他国家使用,
尝试:
double num2 = double.Parse(Console.ReadLine(), NumberStyles.Any, CultureInfo.InvariantCulture);
或将分隔符设置为:
var culture = (CultureInfo)CultureInfo.CurrentCulture.Clone();
culture.NumberFormat.NumberDecimalSeparator = ".";
double num2 = DateTime.Parse(Console.ReadLine(), culture);
我希望这会有所帮助:-)
以上是关于如何在简单计算器中将Console.ReadLine()转换为两倍?问题C#,例外情况的主要内容,如果未能解决你的问题,请参考以下文章