我是编码的初学者。我在我大学的编程和算法入门课程中。我的教授和我无法弄清楚如何修复此代码。我想从另一个文件输出到一个文件。新文件已创建,但仍为空。任何帮助或输入将不胜感激!谢谢!
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();
}}
答案 0 :(得分:0)
在程序结束时添加file2.close();
。 OutputStreams
经常写入缓冲区而不是实际目标(此处为文件)。该缓冲区在满时刷新。要确保将所有内容写入文件,您必须致电close()
。