Java:保存变量问题

Java:保存变量问题,java,Java,我试着让它在每次程序循环时保存到一个文件中。目前我有: import java.io.*; import java.lang.System; import java.util.Scanner; public class writing { public static void main(String[] args){ Scanner input = new Scanner(System.in); Scanner input1 = new Scan

我试着让它在每次程序循环时保存到一个文件中。目前我有:

import java.io.*;
import java.lang.System;
import java.util.Scanner; 

public class writing {



    public static void main(String[] args){
        Scanner input = new Scanner(System.in);
        Scanner input1 = new Scanner(System.in);

        String FileName = input.next();
        String x = input.next();

        for(int i=0; i<'x'; i++){

            System.out.println("Question");
            String MainQ = input1.nextLine();
            System.out.println("Option 1:  ");
            String Op1 = input1.nextLine();
            System.out.println("Option 2:  ");
            String Op2 = input1.nextLine();
            System.out.println("Option 3:  ");
            String Op3 = input1.nextLine();
            System.out.println("Correct Answer (Option Number:)  " );
            String An1 = input1.next();

            System.out.println("Quesiton 1:"+ MainQ);
            System.out.println(""+ Op1);
            System.out.println(""+ Op2);
            System.out.println(""+ Op3);
            String UAn1 = input1.next();
            if (UAn1 == An1){
                System.out.println("Incorrect");    
                System.out.println("Answer is:  " + An1);
            }else{  
                System.out.println("Correct");

            }

            try{

                FileWriter fw = new FileWriter(FileName + ".txt");
                PrintWriter pw = new PrintWriter(fw);

                pw.println(MainQ);
                pw.println(Op1);
                pw.println(Op2);
                pw.println(Op3);
                pw.println(An1);

                pw.close();

            } catch (IOException e){
                System.out.println("Error!");
            }

        }
    }
}
。。。等等但它现在的工作方式是只记录最后的输入

像这样出现: (假设我用3表示第三个问题和选项编号)


在for循环中创建
FileWriter
时,它总是覆盖内容,因此显然只保留最后的内容。你应该移动这些线

        FileWriter fw = new FileWriter(FileName + ".txt");
        PrintWriter pw = new PrintWriter(fw);

for
语句之前(并尝试/catch-block-accorringly)。

在append模式下打开
FileWriter
,否则它只会覆盖文本文件,而不会附加到文本文件。看


另外,正如其他人所指出的,
camelCase
是Java中变量名的约定,而不是
PascalCase
,而您。

问题到底是什么?包括任何异常/错误消息。没有错误消息,抱歉,问题不好。我希望每次程序循环文本文件时都是这样的:(问题1)问题示例(选项1)选项示例。。。。(问题2)问题示例(选项1)选项示例等。但是它现在的工作方式是只记录最后一次输入。如果
filename
始终是相同的变量,那么将始终创建相同的文件。怎么办?那问题出在哪里?
3
3
3
3
        FileWriter fw = new FileWriter(FileName + ".txt");
        PrintWriter pw = new PrintWriter(fw);