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