Java:将输出打印到文本文件

时间:2015-11-19 18:05:46

标签: java

我是编码的初学者。我在我大学的编程和算法入门课程中。我的教授和我无法弄清楚如何修复此代码。我想从另一个文件输出到一个文件。新文件已创建,但仍为空。任何帮助或输入将不胜感激!谢谢!

import java.util.Scanner;
import java.io.PrintWriter;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
public class Part3 {
public static void main(String[] args) throws IOException
{
    int i = 0;

    FileInputStream fileIn = null;
    Scanner file = null;
    double input = 0;

    FileOutputStream fileOut = null;
    PrintWriter file2 = null;

    System.out.println("Opening file LabInput.txt.");
    fileIn = new FileInputStream("LabInput.txt");
    file = new Scanner(fileIn);

    fileOut = new FileOutputStream("LabOutput.txt");
    file2 = new PrintWriter(fileOut);

    while (file.hasNext())
    {
        input = file.nextDouble();
        file2.println("test");

            if(i % 3== 0)
            {
                 file2.println("");
                 i++;
            }
        file2.printf("%10.3f", input);
   }

    file2.println("");
    file2.println("Closing file LabInput.txt.");
    fileIn.close();
    fileOut.close();

}}

1 个答案:

答案 0 :(得分:0)

在程序结束时添加file2.close();OutputStreams经常写入缓冲区而不是实际目标(此处为文件)。该缓冲区在满时刷新。要确保将所有内容写入文件,您必须致电close()