gpt4 book ai didi

java - 输入输出,并非所有行都有相同的数据量

转载 作者:行者123 更新时间:2023-12-01 23:47:23 30 4
gpt4 key购买 nike

我收到了一个充满详细信息的文件,必须将其提取并根据其各自的列存储到不同的对象数组中。棘手的是,并非所有线路都具有相同数量的数据。我可以读取文件,可以拆分它以及所有内容。

20005,Arsenal,ManU,Arsenal,WestHam,Y,2,3,40000
2006,ManU,Chelsea,ManU,WestHam,N
2007,ManU,Arsenal,ManU,WestHam,Y,1,0,260000
2008,Chelsea,ManU,Chelsea,Swansea,Y,4,0,285630
2009,Chelsea,ManCity,Chelsea,Swansea,N

我可以将所有内容存储到数组中,直到第 6 列,之后,对于某些行,未给出信息,那就是当我从 eclipse 收到错误时。我该如何解决这个问题?

这是我的代码:(没有发布全部代码,因为这是一项作业,人们可能正在寻找答案,我不想因共谋而被抓)

try{ 
Scanner kd = new Scanner(file);
while(kd.hasNext()){
String data = kd.nextLine();
String [] values = data.split(",");
String year = values[0];
String winningscore= values[6];

我收到此错误:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 6
at GrandFinal.<init>(GrandFinal.java:19)
at MainClass.main(MainClass.java:11)

最佳答案

您需要检查values数组是否足够长。

if(values.length > 0){
String year = values[0];
}
if(values.length > 6){
//values.length == 6 means the last element you can access is number 5.
String year = values[6];
}

关于java - 输入输出,并非所有行都有相同的数据量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16816315/

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