【问题标题】:Java PrintWriter not writing to file [closed]Java PrintWriter不写入文件[关闭]
【发布时间】:2015-10-04 19:47:41
【问题描述】:

在这个程序中,我正在读取一个充满数字的文件,将它们添加到一个数组中,并计算这些值的最小值、最大值、总和和平均值,然后将这些值写入一个文本文件。我正在将值读入数组并计算正常,但我的写入方法无法正常工作。

写法:

public static void write(File file, int min, int max, int sum, double average){

    try{
        PrintWriter pw = new PrintWriter("file");
        pw.println("The min value is "+min);
        pw.println("The max value is " +max);
        pw.println("The sum of the values is "+sum);
        pw.println("The average of the values is "+average);
        pw.close();
    }
    catch (IOException e){
        System.out.println("Failed to write to file");
    }

}

初始化方法:

int min = min(data);
    int max = max(data);
    int sum = sum(data);
    double average = average(data);
    File stats = new File("stats");
    write(stats, min, max, sum, average);

【问题讨论】:

    标签: java file-io printwriter


    【解决方案1】:

    您正在使用文件名 file 初始化您的 PrintWriter,而不是使用:

    PrintWriter pw = new PrintWriter(file);
    

    这将创建一个名为 stats 的文件。

    【讨论】:

    • 哇,我不敢相信我做到了,谢谢!
    【解决方案2】:

    程序正在检查名为“file”的文件。您需要传递java.io.File的对象

    public static void write(File file, int min, int max, int sum, double average){
    
        try{
            PrintWriter pw = new PrintWriter(file);
            pw.println("The min value is "+min);
            pw.println("The max value is " +max);
            pw.println("The sum of the values is "+sum);
            pw.println("The average of the values is "+average);
            pw.close();
        }
        catch (IOException e){
            System.out.println("Failed to write to file");
        }
    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多