Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/402.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/opencv/3.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_Bufferedreader - Fatal编程技术网

Java 为什么赢了';这个程序在我的计算机上运行时不会返回任何东西吗?

Java 为什么赢了';这个程序在我的计算机上运行时不会返回任何东西吗?,java,bufferedreader,Java,Bufferedreader,目前,我正在尝试(并且失败)在这个家庭作业的上下文中读取文件。程序运行时应该返回一个单独文件中每个单词的编号列表,但它只返回一个空白屏幕。我在Java中使用文件阅读器对象,并使用scanner类从该文件阅读器中读取单个单词 我已经在类似的实例中尝试了缓冲读取器。没有找不到文件的错误,所以不可能是这样 import java.util.*; import java.io.*; public class Driver { public static void main(String[] a

目前,我正在尝试(并且失败)在这个家庭作业的上下文中读取文件。程序运行时应该返回一个单独文件中每个单词的编号列表,但它只返回一个空白屏幕。我在Java中使用文件阅读器对象,并使用scanner类从该文件阅读器中读取单个单词

我已经在类似的实例中尝试了缓冲读取器。没有找不到文件的错误,所以不可能是这样

import java.util.*;
import java.io.*;

public class Driver {
    public static void main(String[] args) {
        FileReader inputStream = null;
        try {
            inputStream = new FileReader("C:\\Users\\[my username]\\Documents\\lorem ipsum.txt");
            System.out.println("Testing.");

            boolean placeholder = false;
            WordBag textfile = new WordBag(2000);
            Scanner scan = new Scanner(inputStream);

            while (scan.hasNext()) {
                Word temp = new Word(scan.next());
                placeholder = textfile.add(temp);
                if (placeholder = false) {
                    System.out.println("Addition failed.");
                }
            }

            while (!textfile.isEmpty()) {
                System.out.println(textfile.remove().toString());
            }
        }
        catch (FileNotFoundException e){
            System.out.println("File not found.");
        }
    }
}
  • 单词对象类型有两个变量——一个存储字符串,另一个存储单词在文件中出现的频率

  • WordBag对象本质上是这些word对象的数组,带有一些特定的方法

预期的输出应该是文件中各种单词的列表。然而,它没有在屏幕上打印任何内容


编辑:它只打印“测试”。很抱歉,我没有准确描述输出

请在
finally
中关闭输入流,或使用
try with resources
自动关闭输入流。这不是问题的原因,但不关闭流是一个坏习惯。屏幕上应该有一些内容,如
“测试”。
“未找到文件”。
。如果不是这种情况,您没有运行您发布的代码
If(placeholder=false)
似乎没有达到您的目的。使用
if(placeholder==false)
if(!placeholder)
@Zéychin我会选择
if(!placeholder)
我自己。我发现使用布尔式的
==
很糟糕。@WJS同样,但我们似乎是在和一个学生说话,所以为了清楚起见,我将两者都包括在内。