java - 在java中读取.txt文件时出现ArrayIndexOutOfBoundsException

标签 java

try (BufferedReader br = new BufferedReader(new FileReader("/home/modi/Desktop/hbaseoff/mobiledata.txt")))
        {

            String sCurrentLine;

            while ((sCurrentLine = br.readLine()) != null) {
                String[] values = sCurrentLine.split("\t");
System.out.println(values[0]+"-"+values[1]+"\t"+values[2]+"\t"+values[3]+"\t"+values[4]);
}

        } catch (IOException e) {
            e.printStackTrace();
        } 

输出:

20150320-9876543217 16  45  22
20150320-8876543218 45  11  13
20150320-8876543219 49  15  16
20150321-9876543210 16  45  22
20150321-9876543211 45  11  13

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1 at Jclass.main(Jclass.java:18)

最佳答案

因为只有 4 个制表符分隔值

尝试

System.out.println(values[0]+"-"+values[1]+"\t"+values[2]+"\t"+values[3]);

我个人会把它放在一个循环中

for (String val : values) {
   System.out.print (val + "\t");
}
System.out.println ();

关于java - 在java中读取.txt文件时出现ArrayIndexOutOfBoundsException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36467970/

相关文章:

java - 从 UnorderedListADT 生成 UnorderedVector,但出现未经检查的转换错误

java - Java搜索屏幕上的文本字段

java - 使用 CQL jdbc 驱动程序时连接字符串应该是什么

java - type2 的 mysql 数据库的驱动程序名称和 url 是什么

java - 使用 spring boot 启动器的更好方法

java - 迭代同步块(synchronized block)中检索的列表是线程安全的吗?

java - 如何在 Eclipse 中自动完成 Drools?

java - Eclipse Project Explorer 中的拖放以某种方式对 Java 实体禁用

java - 递归分区排序效率低下

java - java中基本数据格式转换