解析负数时出现FormatException

时间:2018-10-18 14:11:56

标签: c# console formatexception

所以我有以下代码:

String inputValues = Console.ReadLine();
string[] values = inputValues.Split(" ");
int firstValue = Int32.Parse(values[0]);
int secondValue = Int32.Parse(values[1]);
int thirdValue = Int32.Parse(values[2]);

不知何故,我在firstvalue-value上抛出了formatexception,表示当我在其中放入负数(如-2)时,字符串格式不正确。我在控制台中也放了一些奇怪的括号,将值放在其中。您可以在图片中看到它们。这些是什么,它们是否在做我的值,因为可以肯定您可以正确解析负数?

enter image description here

1 个答案:

答案 0 :(得分:0)

尝试一下。

        String inputValues = Console.ReadLine();

        var formatSign = new NumberFormatInfo();
        formatSign.NegativeSign = "−";

        string[] values = inputValues.Split(" ");
        int firstValue = Int32.Parse(values[0],formatSign);
        int secondValue = Int32.Parse(values[1],formatSign);
        int thirdValue = Int32.Parse(values[2],formatSign);