在C#中,類型轉換失敗通常會拋出一個InvalidCastException
異常。要解決這個問題,可以使用以下方法之一:
as
關鍵字進行安全類型轉換,如果轉換失敗則返回null,而不會拋出異常。MyClass obj = someObj as MyClass;
if (obj != null)
{
// 轉換成功
}
else
{
// 轉換失敗
}
int result;
if (int.TryParse(inputString, out result))
{
// 轉換成功
}
else
{
// 轉換失敗
}
try
{
int result = Convert.ToInt32(inputString);
// 轉換成功
}
catch (FormatException ex)
{
// 轉換失敗
}
使用上述方法可以避免類型轉換失敗時拋出異常,使代碼更加健壯和可靠。