2011-03-20 71 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]); 
} 

但是,您不想吞下异常。如果发生这种异常,这意味着你做错了什么,你需要修复它。