【发布时间】:2018-09-23 23:19:51
【问题描述】:
我发现了一个问题——当我运行这个程序时,Visual Studio 抛出一个异常——格式异常:输入字符串的格式不正确。
string name = Console.ReadLine();
int age = int.Parse(Console.ReadLine());
int id = int.Parse(Console.ReadLine());
double salary = double.Parse(Console.ReadLine());
Console.WriteLine($"Name: {name}");
Console.WriteLine($"Age: {age}");
Console.WriteLine($"Employee ID: {id:D8}");
Console.WriteLine($"Salary: {salary:F2}");
很遗憾,我在这里找不到错误。你能帮我吗?或者这是 Visual Studio 中的错误?
【问题讨论】:
-
您正在尝试将 Colsole.ReadLine 中的内容转换为 int,但在尝试转换之前您知道它是否是 int 吗?可能是别的东西
-
-
你能分享你的意见吗?
-
您遇到了异常,但您没有努力找出它的含义。你甚至不知道哪一行引发了异常。您将字符串传递给
int.Parse()和double.Parse(),但您似乎不知道您传递的是什么字符串。您找不到错误,因为您没有尝试寻找错误。异常消息的信息量不是很大,但谷歌会告诉你它的确切含义。你不打扰吗? -
请阅读minimal reproducible example 发布代码指南 - 在这种情况下,您应该提供准确的输入作为常量字符串,而不是
ReadLine。还可以找到比disney.com 更合适的搜索引擎。 Google,Bing 会立即为您解释异常,在 MSDN 上搜索或在 Visual Studio 中单击 F1 将有助于解释Console.WriteLine或Int32.Parse。到目前为止,除了这个异常的数千个现有变体之外,这篇文章没有为 SO 带来任何新信息。
标签: c# exception formatting