当前位置: 首页 > 知识库问答 >
问题:

java.lang.Array索引出界异常: 长度 =1;尝试读取 csv 时索引 = 1 [重复]

和丰羽
2023-03-14

我在尝试读取csv文件时遇到问题,错误如下所示: java.lang.Array索引超出边界异常: 长度=1; 索引=1 。我尝试过在堆栈溢出中搜索,错误与上面相同。

法典:

private void readCSVFile(String csvNameFile) {
    try {
        File readFolderCSV = new File(Environment.getExternalStorageDirectory() + "/Download/" + csvNameFile);
        CSVReader csvReader = new CSVReader(new FileReader(readFolderCSV.getAbsoluteFile()));
        String[] nextLine;
        while((nextLine = csvReader.readNext()) != null) {
            Log.e("TAG", nextLine[0] + nextLine[1] + nextLine[2] + nextLine[3] + nextLine[4]);
        }
    } catch (Exception e) {
        e.printStackTrace();
        Toast.makeText(MasterUoM.this, "The specified file was not found", Toast.LENGTH_SHORT).show();
    }
}

MyCSVFile:

共有2个答案

陆昕
2023-03-14

您似乎正在尝试获取列[2]和列[3]

 Log.e("TAG", nextLine[0] + nextLine[1] + nextLine[2] + nextLine[3] + nextLine[4]);

您可以通过打印nextLine.length()进行检查。

微生翼
2023-03-14

你的问题在这里:

while((nextLine = csvReader.readNext()) != null) {
            Log.e("TAG", nextLine[0] + nextLine[1] + nextLine[2] + nextLine[3] + nextLine[4]);
        }

你在没有长度安全的情况下伐木。您有一行< code>nextLine[1]不存在。那是因为csvreader返回的不是单元格而是行。

您需要使用拆分方法拆分行。Java将字符串拆分为数组,然后再次检查表的长度是否足够。

3,4和5小区访问将给您带来同样的麻烦。

 类似资料:
  • 我试图为hibernate OGM mongo DB应用程序添加hibernate搜索支持。当我尝试使用行重新生成索引时,经常会出现以下异常。 HSearch000058:HSearch000116:MassIndexer操作过程中出现意外错误java.lang.NosuchMethoderror:org.hibernate.search.engine.spi.documentBuilderInd

  • 在Java中构建汇编程序:我试图将用户的输入读入名为的。如果用户输入的指令与-array中的一个匹配,那么相应的操作码将被计算出来并输出到一个文本文件中。 但是,在输入指令并尝试添加另一条指令后,我得到了一个索引越界异常。 如果你们能帮忙,我会很感激的。

  • 我一直在四处寻找是否有任何东西可以帮助我,但我不太了解人们的回答,任何我所了解的似乎都不能解决问题!所以基本上正如标题所说,我得到了一个数组索引越界异常,但我不知道为什么。非常感谢任何帮助。 代码:

  • maven jaavadoc插件生成参数文件:选项和包,但当javadoc通过此插件执行时出现以下错误:退出代码:1-javadoc:错误-无法读取输入长度=1

  • 在此输入图像描述 这是我的代码,我试图解决它5个小时,但我没有得到什么问题,任何人都可以帮助。我也检查了资源,但代码与源代码相同,但它没有运行。