Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.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_File Io - Fatal编程技术网

Java文件输出检查

Java文件输出检查,java,file-io,Java,File Io,我刚刚编写了大量代码,我正试图用这些代码编写一个输出文件- File outfile = new File ("output.txt"); PrintWriter outFile = new PrintWriter(outfile); outFile.printf("%-20s%5s%5s%5s%5s", f,median,avg,min,max); outFile.println(""); outFile.printf("%-20s%5s%5s%5s%5s", f,median,avg,min

我刚刚编写了大量代码,我正试图用这些代码编写一个输出文件-

File outfile = new File ("output.txt");
PrintWriter outFile = new PrintWriter(outfile);
outFile.printf("%-20s%5s%5s%5s%5s", f,median,avg,min,max);
outFile.println("");
outFile.printf("%-20s%5s%5s%5s%5s", f,median,avg,min,max);
outFile.println("");
outFile.printf("%-27s%5d%5d%5d%5d", firstplayer,P1median,P1avg,PScore.get(0),PScore.get(PScore.size()-1));
outFile.println("");
outFile.printf("%-27s%5d%5d%5d%5d", secondplayer,P2median,P2avg,Player2.get(0),Player2.get(Player2.size()-1));
outFile.println("");
outFile.printf("%-27s%5d%5d%5d%5d",fourthplayer,P4median,P4avg,Player4.get(0),Player4.get(Player4.size()-1));
outFile.close();

现在,由于我没有抛出错误或异常,我相信我已经成功地编写了一个输出文件,但是我不知道它位于何处以及如何检查它的内容。如果这是一个错误的问题,我深表歉意,但我正在努力从别处找到答案,因此,如果您能帮助查找输出文件或更正我的错误,我将不胜感激。

您应该关闭文件,以确保一切正常

outFile.close()

如果您希望这些结果在运行时显示在磁盘上,还可以随时刷新

outFile.flush()


此外,除了case之外,您不应该为两个变量命名相同的名称。调用您的文件,
File
,调用您的PrintWriter,
writer

,如果您仍然不确定文件的位置,这将打印出完整的文件路径:

System.out.println(outfile.getAbsolutePath())

如果要打印文件的内容,以便在程序中进行检查,请执行以下操作:

//ensure content in file is updated
outfile.flush();

BufferedReader br = null;
try {
    br = new BufferedReader(new FileReader(outfile));
    String line;
    while ((line = br.readLine()) != null) {
         System.out.println(line);
    }
}
catch (IOException e) {
    e.printStackTrace();
}
finally {
    try {
        br.close();
    }
    catch (IOException e) {
        e.printStackTrace();
    }
}

还要确保关闭该文件

我读了《核心Java》一书,这里是另一种查找文件目录的方法

String dir=System.getProperty("user.dir");
System.out.println(dir);

通过控制台的目录,您可以找到您的文件“output.txt”

我确实有outFile.close();但似乎错过了将代码传输过来的机会。我将尝试flush方法并重命名我的变量,谢谢!没问题。:)你还有什么不明白的吗?如果其中一个答案解决了你的问题,你应该接受它!我还添加了一个如何逐行打印内容的示例。谢谢!!如果你不知道我对这个社区有点陌生,那么我很感激你的病人!!现在我能够找到它了,我只需要稍微调整一下格式就可以了!!再次感谢!!