public static void main(String[] args) throws Exception {
//String path="D:\\a.txt";
BufferedReader reader = new BufferedReader(new FileReader("D:\\a.txt"));
String line = null;
String data[][] = new String[100][20];
int index = 0;
while((line=reader.readLine())!=null) {
String item[] = line.split("\t");
//System.out.println(item[1]+item[3]);
data[index][0]=item[1];
data[index][1]=item[3];
index++;
}
}
data[index][0]=item[1]这行一直报错Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
at Test.main(Test.java:42)
我是想把文件中第二列第四列提取出来放到数组data里。
求助啊
------解决思路----------------------
可能是"D:\\a.txt"文本的问题。 也许最后一行只有一列。 String item[] = line.split("\t"); 分割后item[1];就越界了。
吧这个文本的内容贴出来看看、
------解决思路----------------------
String item[] = line.split("\\s+");
正则里面\s是空格
------解决思路----------------------
String item[] = line.split("\t"); 这个行代码有问题,你这个是按照制表符进行拆分字符串的,而java中制表符代表水平右移八个ASCII码位置,估计你的"a.txt"文件中没有匹配项,导致数组只有一个元素。
------解决思路----------------------
是不是你的文本文档最后还有个换行加空格或者换行\t之类的?
退格一直推到第五行那里后面不要留别的空白