我目前使用的方法。當一個字符串在推吞下的調試,它給了我這個錯誤切換在我的控制檯菜單返回一個Convert.ToInt32(Console.ReadLine());
出現FormatException在Convert.ToInt32
:An unhandled exception of type 'System.FormatException' occurred in mscorlib.dll
我試圖在MSDN上研究這個錯誤,但不能解決如何添加格式。有人可能請給我一個簡單的修復鏈接?謝謝。
我目前使用的方法。當一個字符串在推吞下的調試,它給了我這個錯誤切換在我的控制檯菜單返回一個Convert.ToInt32(Console.ReadLine());
出現FormatException在Convert.ToInt32
:An unhandled exception of type 'System.FormatException' occurred in mscorlib.dll
我試圖在MSDN上研究這個錯誤,但不能解決如何添加格式。有人可能請給我一個簡單的修復鏈接?謝謝。
您需要確保您的用戶輸入是一個整數,您可以使用Int32.TryParse()。顯然你不能將sdasds
轉換爲int。
檢查,這是一個int
,如果不是的話,保持提示用戶:
int choice = 0;
while (!Int32.TryParse(Console.ReadLine(), out choice))
{
Console.WriteLine("Invalid input, please enter a valid integer");
}
然後在你的switch
塊使用choice
:
switch (choice)
{
case 1:
addcourse();
break;
// etc...
這工作!非常感謝! + –
高興地幫助 - 如果這回答你的問題,然後免費標記爲[接受的答案](http://meta.stackexchange.com/questions/5234/how-does-accepting-an-answer-work)。 – DGibbs
什麼是控制檯的'輸入.ReadLine()'和你的'CurrentCulture'是什麼?就像我看到的,看起來你的'Convert.ToInt32'方法會拋出這個異常。 –
任何字符串,例如sdasds會返回這個錯誤。 –
_所有字符串?那麼,你覺得你如何將'sdasds'字符串解析爲整數? –