苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 6013|回复: 8

[学生提问] 请大佬帮我看看数组超出界限问题

[复制链接]
发表于 2019-11-8 08:54:43 | 显示全部楼层 |阅读模式
private void But8054_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFileDialog1 = new OpenFileDialog();//实例化打开一个对话框,要注意的是O大写
            openFileDialog1.Filter = "文本文件(*.txt)|*.txt";//要打开的文本格式
            if (openFileDialog1.ShowDialog() == DialogResult.OK) ;//判断是否打开文件
            {

                StreamReader Txt2 = new StreamReader(openFileDialog1.FileName);
                string  Txt1 = Txt2.ReadToEnd();//读取文本所有内容

                string[,] data=new string [50,3] ;

                string[] arrx = Txt1.Split('\r','\n');


                for (int x=0;x<=arrx .Length;x ++)
                {
                    textBox1.Text = arrx[x];


                    string[] arry = arrx[x].Split(' ');
                    for (int y=0;y <=arry .Length;y++)
                    {
                        data[x, y]= arry[y];//这里显示数组超出界限

                    }
                }
                Console.WriteLine(data);


txt文本格式
3693948.567 454937.775 26.650 j7
3694793.73 453327.997 29.165 j6
3695263.13 453329.824 27.226 j5
3695845.184 451262.869 27.430 j4
3696713.207 451254.797 27.767 j3
3697340.967 451491.317 28.025 j2
3697876.687 451210.726 27.653 j1
3697885.212 451129.276 27.651 gj




1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2019-11-8 09:51:46 | 显示全部楼层
for (int y=0;y <=arry .Length;y++)
                    {
                        data[x, y]= arry[y];//这里显示数组超出界限

                    }

这里,y <=arry .Length; y如果等于的话就会越界,所以这里的等于号去掉;
回复 支持 1 反对 0

使用道具 举报

发表于 2019-11-8 11:38:36 | 显示全部楼层
下标是从0开始到n-1结束的,
回复 支持 1 反对 0

使用道具 举报

发表于 2019-11-8 09:53:06 | 显示全部楼层

没亲测,只是一眼看过去发现的问题,只能参考
发表于 2019-11-8 11:21:58 | 显示全部楼层
clrscr  一语道破天机啊
发表于 2019-11-8 11:36:18 | 显示全部楼层
=号去掉即可
 楼主| 发表于 2019-11-8 15:02:31 | 显示全部楼层

大哥,这个怎么又跑到下面去了。
QQ截图20191108150118.png
发表于 2019-11-8 18:07:26 | 显示全部楼层
qinyi92 发表于 2019-11-8 15:02
大哥,这个怎么又跑到下面去了。

见站长苏飞的回答:比较全面;

下标是从0开始到n-1结束的,

=号去掉即可

--------------------------------------
下标越界了,里层和外层同样的写法,外层的循环下标肯定也是越界,等于号也得去掉,
发表于 2019-11-8 18:08:03 | 显示全部楼层
zncliving 发表于 2019-11-8 11:21
clrscr  一语道破天机啊

我说的不全面,站长大大回答的全面
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-12-25 15:38

© 2014-2021

快速回复 返回顶部 返回列表