將字串等型態的值轉換成數字是常用到的轉換
不過有時候轉換失敗時
就會產生錯誤
雖然可以用try…..catch去處理例外
不過int.TryParse()更方便
只要轉換失敗
就會傳回false和數字0
這可避免不必要的例外

 

以下是三種方法的狀況比較

 

 

1 //int.Parse各式輸入值的狀況 
2 int.Parse(“20″);   //20 
3 int.Parse(“1000000000000″);   //OverflowException 
4 int.Parse(“a");   //FormatException 
5 int.Parse(String.Empty);   //FormatException 
6 int.Parse(null);   //ArgumentNullException 
7  
8 //int.TryParse各式輸入值的狀況 
9 int resultInt = 0; 
10 int.TryParse(“20″out resultInt);   //True 
11 int.TryParse(“1000000000000″out resultInt);   //False 
12 int.TryParse(“a"out resultInt);   //False 
13 int.TryParse(String.Empty, out resultInt);   //False 
14 int.TryParse(nullout resultInt);   //False 
15  
16 //Convert.ToInt32各式輸入值的狀況 
17 Convert.ToInt32(“20″);   //True 
18 Convert.ToInt32(“1000000000000″);   //OverflowException 
19 Convert.ToInt32(“a");   //FormatException 
20 Convert.ToInt32(String.Empty);   //FormatException 
21 Convert.ToInt32(null);   //0 

 

Reference : http://itgroup.blueshop.com.tw/uuuiii00/AllenJ?n=convew&i=12131 (小a的筆記本)

arrow
arrow
    全站熱搜

    戮克 發表在 痞客邦 留言(0) 人氣()