文本文件上的扫描程序无法向ArrayList添加元素

时间:2016-09-13 11:12:29

标签: java arraylist java.util.scanner

我是Java的新手,并尝试扫描.txt文件以从中检索单个单词。

我在哪里弄错了,因为没有元素添加到ArrayList?

public class ScanInputFile {

public static ArrayList<String> list = new ArrayList<String>();

public static void importArrayList(String path) throws FileNotFoundException {
    File textFile = new File(path);
    Scanner s = new Scanner(textFile);
    while (s.hasNext()){
        list.add(s.next());
    }
    s.close();
}

public static void main(String[] args) throws FileNotFoundException {
    importArrayList("C:\\MyFirstList.txt");
    System.out.println(list.get(0));
}

}

即使txt文件包含10个单词,每行2个单词,也会抛出IndexOutOfBounds异常。

遇到FileNotFoundExceptions问题,我确保path.exists()和path.canRead()返回true。

感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

我尝试使用你发布的代码,它对我有用 - 你的文件是什么样的?我尝试过:

嘘声 FOO 袋鼠 动物园

控制台打印:“boo”。

答案 1 :(得分:0)

你的代码对我来说很好。 &#39;列表&#39;也按预期填充。我所做的只是改变了文件路径。你直接放在C:/下我把它放在一个文件夹下。但那不应该是一个问题。如果你把最后一个S.O.P语句放在一个循环下,它将打印全部。但我没有得到这样的IndexOutOfBoundExpection