PrintWriter不将文本打印到文件

时间:2018-10-11 04:32:21

标签: java

我分配了一个文件的文本复制到另一个文件。通过以下代码,我可以将文件的各行打印到控制台,但无法打印到输出文件。

      try {
        System.out.print("Enter the file name with extension : ");

        Scanner input = new Scanner(System.in);

        File inputFile = new File(input.nextLine());
        PrintWriter out = new PrintWriter("/Users/jonathanzier/Dropbox/IdeaProjects/CSE_205_Homework1/src/com/company/output.txt");


        input = new Scanner(inputFile);


        while (input.hasNextLine()) {
            out.println(input.nextLine());
           //System.out.println(input.nextLine());  - This will print 
           //correctly to the console
        }
        out.close();


    } catch (FileNotFoundException e) {
        System.out.println("File Not Found");
    }

1 个答案:

答案 0 :(得分:0)

打印作家使用缓冲作家。它不会立即写入磁盘。调用printlnprintfformat方法时,如果启用了自动刷新,它将写入磁盘。否则,您必须调用flush方法才能写入磁盘。通常,调用close方法时应将缓冲区中的内容写入文件,而无需使用flush方法。

https://docs.oracle.com/javase/7/docs/api/java/io/PrintWriter.html