打印到文件

时间:2019-04-17 18:22:12

标签: java file-processing

我正在尝试将偶数数字从input.txt文件打印到display.txt输出文件。每当我将输出发送到输出控制台作为测试时,它都可以完美运行。它显示偶数。每当我使用打印流并将其发送到文件时,它只会打印出最后一个偶数。

我已经研究并问了我的教授,谁说他们不知道出什么问题了。

printf

预期的输出是display.txt文件中的所有偶数。文件中仅打印最后一个。

1 个答案:

答案 0 :(得分:4)

这是因为您要在PrintStream循环的每个循环中实例化while,所以要在开始while循环之前实例化PrintStream output = new PrintStream(new File("display.txt"));

例如:

// More code

PrintStream output = new PrintStream(new File("display.txt"));
while (inputfile.hasNext())
{
    if (inputfile.hasNextInt())
    {
        int next = inputfile.nextInt();
        int even = (next % 2);
        if (even == 0)
        {
            output.println(next);
            System.out.println(next);
            count++;
        }
    }
    else
    {
        inputfile.next();
        continue;
    }
}

// More code