system.indexOutOfRangeException索引超出了数组界限

有大神能帮我解决一下问题吗我不知道这样复制出来对不对privatevoidbutton7_Click(objectsender,EventArgse){bytechaxu... 有大神能帮我解决一下问题吗
我不知道这样复制出来对不对
private void button7_Click(object sender, EventArgs e)
{
byte chaxun;
char[] xinxi = new char[16];

for (int i = 0; i < 50; i++)
{
Wrbuffer[i] = 0;
}

Wrbuffer[0] = 0x07;
Wrbuffer[1] = 0x02;
Wrbuffer[2] = 0x47;
Wrbuffer[3] = 0x01;
Wrbuffer[4] = ((byte)Convert.ToInt32(textBox2.Text));
Wrbuffer[5] = bcccode(Wrbuffer, 5);
Wrbuffer[6] = 0x03;

sp.Write(Wrbuffer, 0, 17);

sp.Read(Rdbuffer, 0, 1);
if (Rdbuffer[0] == 0x16)
{
for (int i = 1; i < 0x16; i++)
{
sp.Read(Rdbuffer, i, 1);
textBox1.Text = "查询成功。";
chaxun = Rdbuffer[4];

for (i = 0; i < chaxun; i++)
{
xinxi[i] = (char)Rdbuffer[5 + i];
}
string str = new String(xinxi);

label14.Text = textBox5.Text;

sp.DiscardInBuffer();
}
}
else
{
textBox1.Text = "查询失败!";
sp.DiscardInBuffer();
}
}
展开
 我来答
志当存高远389
2015-05-31 · 知道合伙人互联网行家
志当存高远389
知道合伙人互联网行家
采纳数:11236 获赞数:20406
08年毕业,一直从事计算机行业,从基层做起。有较强的实践操作能力。

向TA提问 私信TA
展开全部
数组越界了,数组abc长度为26,ds.Tables[0].Rows.Count的数据量大于26,可以将abc变量改为队列List<string>,使用abc.Add(str),就不存在越界问题了。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式