Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/346.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用扫描仪读取文本文件并使用列表打印_Java_Java Io - Fatal编程技术网

Java 使用扫描仪读取文本文件并使用列表打印

Java 使用扫描仪读取文本文件并使用列表打印,java,java-io,Java,Java Io,这是一个家庭作业,一个绞刑游戏。现在,除了这一部分,我让整个游戏都在运行。阅读老师提供的字典清单 public static void main(String[] args) throws FileNotFoundException { Scanner fileScan = new Scanner(new File(words.txt)); List<String> dictionary = new ArrayList<String>(); w

这是一个家庭作业,一个绞刑游戏。现在,除了这一部分,我让整个游戏都在运行。阅读老师提供的字典清单

public static void main(String[] args) throws FileNotFoundException {

    Scanner fileScan = new Scanner(new File(words.txt));

    List<String> dictionary = new ArrayList<String>();
    while (fileScan.hasNext()) {

        dictionary.add(fileScan.nextLine().toLowerCase());
    }
    for( int i = 0; i < dictionary.size(); i++) {

        System.out.println(dictionary.get(i));
    }
}
我将这一部分从代码中分离出来,以便能够对其进行测试。我还将字典文件简化为5个单词。当我点击run时,它不会打印任何内容。只是一个空白

words.txt必须加引号,因为它是一个字符串

像这样

 Scanner fileScan = new Scanner(new File("words.txt"));
还要确保txtfile的文件路径正确。您可以使用或

在打印所有数据时,您也可以使用foreach这样做


您是否尝试打印它fileScan.nextLine.toLowerCase以检查它是否有值?不要忘记关闭资源;添加一个fileScan.close;在您的while循环完成之后,我尝试了这个方法,当我在命令提示符下运行时,会显示:ÿ?I a d。我只是不明白为什么这两个符号出现在第一个符号的前面。你这是什么意思?I a d?有错误吗?我很抱歉。我应该说得更多。除ÿ?外,输出正常?。这两个符号不在字典文件中。我认为广告应该是唯一的输出。你是用foreach打印它还是用loop?我用了你给我的foreach
for(String item:dictionary){
    System.out.println(item);
}