gpt4 book ai didi

java - ArrayIndexOutofBoundsException 处理数组

转载 作者:行者123 更新时间:2023-12-01 12:15:38 25 4
gpt4 key购买 nike

我试图从 Excel 文件中读取数字并将它们放入数组中,但出现越界异常...Excel 文件有 2 列,每列 32 行...第一列中的数字(5 位数字长)将被插入到名为 allInputs 的数组中,而第二列(3 位数字长)将被插入到名为 allTargets 的数组中...以下是我的代码;

String[] allInputs = new String[32];
String[] allTargets= new String[32];

//Read the values from csv file

//Input file which needs to be parsed
String fileToParse = "C:\\Users\\ROBMARYAN\\Documents\\UOM\\Bsc IT Comp & Business\\3rd Yr\\Business Intelligence\\NeuralNetAssignment\\src\\inputs.csv";
BufferedReader fileReader = null;

//Delimiter used in CSV file
final String DELIMITER = ",";
try
{
String line = "";
//Create the file reader
fileReader = new BufferedReader(new FileReader(fileToParse));

//Read the file line by line
int icount=0; //determine where to store the input
int tcount=0; //determine where to store the target
while ((line = fileReader.readLine()) != null)
{
//Get all tokens available in line
String[] tokens = line.split(DELIMITER);
for(String token : tokens)
{
//Print all tokens
if (token.length() == 5)
{
***allInputs[icount]=token***;
System.out.println("Stored in all inputs:"+allInputs[icount]);
icount++;
}
else
{
allTargets[tcount]=token;
System.out.println("Stored in all targets:"+allTargets[tcount]);
tcount++;
}
System.out.println("iCOUNT:"+icount);
System.out.println("tCOUNT:"+icount);
}
}
}
catch (Exception e) {
e.printStackTrace();
}
finally
{
try {
fileReader.close();
} catch (IOException e) {
e.printStackTrace();
}
}

allInputs[icount]=token 行上,我收到以下错误;

java.lang.ArrayIndexOutOfBoundsException:32

提前致谢!

最佳答案

如果单元格的内容长度为 5,则该行代码在每个单元格中运行一次。由于电子表格的尺寸为 32 x 2,因此最多可能有 64 个代码行。但是您尝试将它们放入长度为 1 的数组中32,这当然超出了它的界限。

关于java - ArrayIndexOutofBoundsException 处理数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27026354/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com