Java 在不同时间将多行写入文件
我已经完成了我的程序的基础知识 其思想是用户可以指定形状、颜色、宽度、高度等。在输入数据时,调用构造函数创建输出,或者用户可以指定其他创建输出的选项 我的目标是将所有这些输出放到一个文本文件中 目前,我创建了一个扫描仪用于读取:Java 在不同时间将多行写入文件,java,file,file-io,Java,File,File Io,我已经完成了我的程序的基础知识 其思想是用户可以指定形状、颜色、宽度、高度等。在输入数据时,调用构造函数创建输出,或者用户可以指定其他创建输出的选项 我的目标是将所有这些输出放到一个文本文件中 目前,我创建了一个扫描仪用于读取: static Scanner input = new Scanner(System.in); 然后在我的主驱动程序方法中创建一个格式化程序: public static void main(String[] args) { Formatter outp
static Scanner input = new Scanner(System.in);
然后在我的主驱动程序方法中创建一个格式化程序:
public static void main(String[] args) {
Formatter output = null;
try{
output = new Formatter("output.txt");
}
catch(SecurityException e1){
System.err.println("You don't have" +
" write accress to this file");
System.exit(1);
}
catch(FileNotFoundException e){
System.err.println("Error opening or" +
" creating file.");
System.exit(1);
}
每次期望输出后,我都会放置以下代码:
output.format("%s", input.nextLine());
最后我用
output.close()
文件已创建,但当前为空。我知道我在正确的轨道上,因为我尝试过这样做:
output.format("%d", i);
其中i是0的整数,文件写入正确
然而,我似乎无法让它在整个生产线中工作,或者根本无法输出
请帮忙 我不是专家,但你为什么不能只使用“FileWriter”?
是否因为您希望捕获这些异常以向用户显示有用的信息?
还是我完全误解了这个问题如果是这样的话,很抱歉,忽略这一点
import java.io.FileWriter;
import java.io.IOException;
try
{
FileWriter fout = new FileWriter("output.txt"); // ("output.txt", true) for appending
fout.write(msg); // Assuming msg is already defined
fout.close();
}
catch (IOException e)
{
e.printStackTrace();
}
您是否尝试输出常量字符串而不是用户输入?或者类似于:
output.format(“输入:%s”,Input.nextLine())代码>您是否打印了此文件并查看了System.out.println(input.nextLine())中的可用值