2011-03-20 114 views
0

我的網絡項目。它給出IndexOutOfBound異常。我寫try,catch塊。這個異常處理,但按任意鍵繼續是消息顯示。給任何解決方案。異常處理在c#

+4

此信息不能提供「解決方案」。該程序退出。爲什麼?那麼,因爲代碼「告訴」它。也許還有另外一個例外,或者代碼來到它的正確結尾。發佈相關代碼*可能會導致有用的回覆。 – 2011-03-20 06:08:23

+1

我同意其他意見:你必須給我們一些相關的代碼,所以我們可以提供幫助。但即使沒有任何代碼,我可以說,'IndexOutOfBound'不是你想通過try-catch塊處理的一種異常。你的代碼不應該首先拋出這些異常。修復你的數組/列表訪問邏輯 – Dyppl 2011-03-20 06:18:47

回答

2

您需要張貼代碼才能得到真正準確的答案。不過,我會盡力幫助你瞭解發生了什麼。

我猜你實際上意味着你收到了一個IndexOutOfRangeException,它帶有一條消息「索引超出了數組邊界」。這意味着您正試圖訪問數組中某個索引處的對象,該數組超出了數組的範圍。因此,如果數組中有2個項目,並且您嘗試訪問第三個項目,那麼您將得到此異常。新程序員很容易得到這個錯誤,因爲他們忘記了數組的第一個索引是0而不是1,所以如果你想獲得數組中的第一個項目,你可以像yourArrayInstance[0]那樣訪問它。

下面是一個簡單的程序,導致相同的異常。試着在你的代碼中找到一些看起來可以做類似操作的東西,然後你可能會發現錯誤的根源。

void Main() 
{ 
    var ary = new string[]{"hi","what's up"}; 
    Console.WriteLine(ary[2]); 
} 

但是,您不想吞下異常。如果發生這種異常,這意味着你做錯了什麼,你需要修復它。