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

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())中的可用值