所以,我正在从txt文件中读取。该文件是这样的,用制表符分隔"/t"
ID name test date object
1 John pass 9/13 RC_CUST_1
2 John fail 10/13 RC_CUST_1
3 John pass
我正在像这样阅读 txt 文件:
String line="";
ArrayList<String> data = new ArrayList<String>();
FileReader fIn;
BufferedReader buff;
fIn = new FileReader("...");
buff = new BufferedReader( fIn );
while( ( line = buff.readLine() ) != null )
{
if(!line.isEmpty())
data.add(line);
}
在我的代码后期,我这样做:
ArrayList<String> name1 = new ArrayList<String>();
ArrayList<String> RC1 = new ArrayList<String>();
ArrayList<String> date1 = new ArrayList<String>();
ArrayList<String> pass1 = new ArrayList<String>();
String [] substr2;
for(int k=0;k<data.size();k++)
{
substr2=data.get(k).split("t");
RC1.add(substr2[4]);
name1.add(substr2[1]);
date1.add(substr2[3]);
pass1.add(substr2[2]);
}
我有一个错误,因为您可以看到,我的 ID 号 3 没有任何日期或对象。我该如何解决这个问题,我怎么知道哪个ID没有date
或object
例如,我想打印:如果我有这种类型的错误,ID number x has not date
或ID number x has not any object
在t
上拆分后,你会得到一个数组作为结果。 您可以在访问数组中的字段之前检查数组的长度。
for(int k=0;k<data.size();k++) {
String [] substr2 = data.get(k).split("t");
int length = substr2.length
if (length >= 5) {
RC1.add(substr2[4]);
} else {
System.out.println("no object found");
}
....
}