各位大神,帮我看看这是为什么啊?索引超出了数组界限。

问题描述

“/exam”应用程序中的服务器错误。--------------------------------------------------------------------------------索引超出了数组界限。说明:执行当前Web请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。异常详细信息:System.IndexOutOfRangeException:索引超出了数组界限。源错误:行204:else行205:{行206:strPaperContent=strPaperContent+"<tdwidth='10px'nowrap><tdwidth='100%'><inputtype='radio'id='Answer"+intTestNum.ToString()+"'name='Answer"+intTestNum.ToString()+"'value='"+Convert.ToChar(64+k)+"'>"+Convert.ToChar(64+k)+"."+strArrOptionContent[k-1]+"</td>";行207:}行208:strPaperContent=strPaperContent+"</tr>";源文件:c:ExamPersonInfoStartExamAll.aspx.cs行:206堆栈跟踪:[IndexOutOfRangeException:索引超出了数组界限。]EasyExam.PersonalInfo.StartExamAll.Page_Load(Objectsender,EventArgse)inc:ExamPersonInfoStartExamAll.aspx.cs:206System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtrfp,Objecto,Objectt,EventArgse)+14System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Objectsender,EventArgse)+35System.Web.UI.Control.OnLoad(EventArgse)+99System.Web.UI.Control.LoadRecursive()+50System.Web.UI.Page.ProcessRequestMain(BooleanincludeStagesBeforeAsyncPoint,BooleanincludeStagesAfterAsyncPoint)+627--------------------------------------------------------------------------------版本信息:Microsoft.NETFramework版本:2.0.50727.3053;ASP.NET版本:2.0.50727.3053

解决方案

解决方案二:
strArrOptionContent[k-1]这句报错了
解决方案三:
引用1楼starfd的回复:

strArrOptionContent[k-1]这句报错了

开始几天是可以的,就今天突然报错了。这是为什么?
解决方案四:
strArrOptionContent[k-1]
解决方案五:
你得查下你得strArrOptionContent,看到底有多少数据,然后你的k又是怎么的出来的
解决方案六:
引用4楼starfd的回复:

你得查下你得strArrOptionContent,看到底有多少数据,然后你的k又是怎么的出来的

strArrOptionContent=SqlDSTest.Tables["UserAnswer"].Rows[j]["UserAnswer"].ToString().Split(',');for(k=1;k<=intOptionNum;k++){if(k<=strArrOptionContent.Length){strTestContent=Reg.Replace(strTestContent,"<inputtype='text'id='Answer"+intTestNum.ToString()+"'name='Answer"+intTestNum.ToString()+"'size='16'class=filltextvalue='"+strArrOptionContent[k-1]+"'onBlur='textcheck()'title='试题答案中不能包含半角逗号“,”'>",1);}else{strTestContent=Reg.Replace(strTestContent,"<inputtype='text'id='Answer"+intTestNum.ToString()+"'name='Answer"+intTestNum.ToString()+"'size='16'class=filltextvalue=''onBlur='textcheck()'title='试题答案中不能包含半角逗号“,”'>",1);}}}strPaperContent=strPaperContent+"<tdcolspan='2'width='100%'><inputtype='hidden'id='TestTypeTitle"+intTestNum.ToString()+"'name='TestTypeTitle"+intTestNum.ToString()+"'value='"+SqlDSTestType.Tables["PaperTestType"].Rows[i]["TestTypeTitle"].ToString()+"'><inputtype='hidden'id='RubricID"+intTestNum.ToString()+"'name='RubricID"+intTestNum.ToString()+"'value='"+SqlDSTest.Tables["UserAnswer"].Rows[j]["RubricID"].ToString()+"'><inputtype='hidden'id='BaseTestType"+intTestNum.ToString()+"'name='BaseTestType"+intTestNum.ToString()+"'value='"+SqlDSTestType.Tables["PaperTestType"].Rows[i]["BaseTestType"].ToString()+"'><aid='l"+intTestNum.ToString()+"'style='color:black'>"+intTestNum.ToString()+"</a>."+strTestContent+"<fontcolor='red'>("+SqlDSTest.Tables["UserAnswer"].Rows[j]["TestMark"].ToString()+"分)</font></td>";strPaperContent=strPaperContent+"</tr>";if(SqlDSTestType.Tables["PaperTestType"].Rows[i]["BaseTestType"].ToString()=="单选类"){intOptionNum=Convert.ToInt32(SqlDSTest.Tables["UserAnswer"].Rows[j]["OptionNum"]);strArrOptionContent=SqlDSTest.Tables["UserAnswer"].Rows[j]["OptionContent"].ToString().Split('|');for(k=1;k<=intOptionNum;k++){strPaperContent=strPaperContent+"<tr>";if(SqlDSTest.Tables["UserAnswer"].Rows[j]["UserAnswer"].ToString().IndexOf(Convert.ToChar(64+k))>=0){strPaperContent=strPaperContent+"<tdwidth='10px'nowrap><tdwidth='100%'><inputtype='radio'id='Answer"+intTestNum.ToString()+"'name='Answer"+intTestNum.ToString()+"'value='"+Convert.ToChar(64+k)+"'checked>"+Convert.ToChar(64+k)+"."+strArrOptionContent[k-1]+"</td>";}else{strPaperContent=strPaperContent+"<tdwidth='10px'nowrap><tdwidth='100%'><inputtype='radio'id='Answer"+intTestNum.ToString()+"'name='Answer"+intTestNum.ToString()+"'value='"+Convert.ToChar(64+k)+"'>"+Convert.ToChar(64+k)+"."+strArrOptionContent[k-1]+"</td>";}strPaperContent=strPaperContent+"</tr>";}}大神,你帮我看看好吗?我看了半天,判断不出来。
解决方案七:
你在从数组拿数据之前判断你的k-1是否比你数组的长度大?做个判断就不会报错了。然后你要知道为什么这里会出现这个问题。最主要是问题啊。

时间: 2024-10-23 00:47:26

各位大神,帮我看看这是为什么啊?索引超出了数组界限。的相关文章

python学习-学习python,各位大神帮帮忙!

问题描述 学习python,各位大神帮帮忙! 我是超级菜鸟,没有任何编程基础,现在想学习python,想请教各位大神,我该如何下手,或者给我一些建议也好,万分感谢! 解决方案 从python官方下载编译器,再找本书看,找经典例题看,然后自己编写. 解决方案二: 我也是菜鸟,工作中用不到,就简单的看了一下,这儿有几个网站,希望能帮到你http://www.pythonclub.org/http://woodpecker.org.cn/abyteofpython_cn/chinese/index.h

ava cript-哪位大神帮我看一下里面那个值是怎么算出来最好能举例说明下

问题描述 哪位大神帮我看一下里面那个值是怎么算出来最好能举例说明下 function showLoginPop(){ $("#popupLogin").show(); } // === Begin Date.js var CalendarData=new Array(100); var madd=new Array(12); var tgString="甲乙丙丁戊己庚辛壬癸"; var dzString="子丑寅卯辰巳午未申酉戌亥"; var n

socket-JAVA代理服务器,用浏览器打开的时候显示的网页信息总是不全,有时候显示不出来,求大神帮我看看

问题描述 JAVA代理服务器,用浏览器打开的时候显示的网页信息总是不全,有时候显示不出来,求大神帮我看看 package work; import java.io.*; import java.net.*; public class MMProxy extends Thread { static public int CONNECT_RETRIES = 5; //尝试与目标主机连接次数 static public int CONNECT_PAUSE = 5; //每次建立连接的间隔时间 stat

keytool-ssl的大神帮我看下这个问题吧

问题描述 ssl的大神帮我看下这个问题吧 公司的有一个服务器 一个客户端通过ssl加密连接,服务器是C写的,现在又用java写了一个,把C的放弃,由于客户端都在外面,所以客户端的证书没有办法修改(客户端有一个truststore文件),我现在从C的服务器上拿到了两个pem 文件(ca.pem,server.pem),这应该是用openssl生成的,我用keytool生成的keystore文件,在tomcat下的server.xml 里面配置下keystoreFile就可以使用了,我把这两个文件路

AADL-osate安装步骤拿稳大神帮个忙

问题描述 AADL-osate安装步骤拿稳大神帮个忙 那位大神了解AADL-OSATE的吗,能把安装步骤告诉一下吗?急急急!!先谢了!由于没有钱币不,悬赏不了,只求好心人帮个忙 解决方案 http://wenku.baidu.com/link?url=PJ2l3wDqG4oKU3c7ZoFJwtEN4VL76d9Bn8sbwQQuEVhgD7YKmDm51qiJRiAfkNGl1g_0lztGf0ae8fuZpGSoeghQoN5wFhlXMUc6GJS9tfC

int-求大神 帮我看下这个存储过程哪里错了

问题描述 求大神 帮我看下这个存储过程哪里错了 DROP PROCEDURE IF EXISTS Query_Role_PhoneRecord;DELIMITER ;;CREATE DEFINER=root@% PROCEDURE Query_Role_PhoneRecord( in userId binary(16)in pagNo intin pagSize int )BEGINdeclare bSize int; set bSize=(pagNo-1)*pagSize;if(bSize<0

求大神帮我解决ueditor单图上传按钮显示的问题asp.net

问题描述 求大神帮我解决ueditor单图上传按钮显示的问题asp.net 因为公司项目需要,昨天下载了一个.net版的ueditor富文本编辑器,现在也只是能在页面上显示出来了,还有很多的配置问题没解决,现在的问题是单图上传按钮是灰色的,怎么让它显示?还是多图上传的本地文件上传的配置问题,希望能来个大牛帮我解决一下,最好有个截图解释一下,才刚工作一个月,谢谢了

VS2012无法附加进程,求大神帮解决

问题描述 VS2012无法附加进程,求大神帮解决 解决方案 直接在vs里调试你的asp.net程序

新生 求大神帮帮忙!

问题描述 新生 求大神帮帮忙! 解决方案 求大神帮帮忙 解决方案二: 先看看你的数据库启动了没 解决方案三: 试试: 打开'程序'-'所有程序'-'Microsoft SQL Server 2012 '-'配置工具'-'SQL Server 配置管理器',在弹出的窗体中,找到'SQL Server 2012 网络配置',把'MSSQLSERVER的协议'下的"Named Pipes"和"TCP/IP"启动,然后重新启动Microsoft SQL Server 201