当前位置: 首页 > 知识库问答 >
问题:

将问题数组放入文件中

姬存
2023-03-14

我不确定如何开始这个,希望得到一些想法,可以帮助我。

我的代码示例:

//Set question and answers.
            questions[0] = new P3A2_Harvey_4251833_Question("JVM stands for what?", "D");
            questions[0].setChoice("A. Java Variable Machine");
            questions[0].setChoice("B. Java Variable Method");
            questions[0].setChoice("C. Java Virtual Method");
            questions[0].setChoice("D. Java Virtual Machine");
            questions[1] = new P3A2_Harvey_4251833_Question("Every complete programming statement ends with what?", "A");
            questions[1].setChoice("A. Semicolon");
            questions[1].setChoice("B. Period");
            questions[1].setChoice("C. Colon");
            questions[1].setChoice("D. Question Mark");
            questions[2] = new P3A2_Harvey_4251833_Question("This type of expression can be either true or false", "C");
            questions[2].setChoice("A. Null Expression");
            questions[2].setChoice("B. Binary Expression");
            questions[2].setChoice("C. Boolean Expression");
            questions[2].setChoice("D. Method Expressions");
            for(int i = 0; i<questions.length;i++)
            {
                //Randomizing the questions in the array. 
                int n = rand.nextInt(3);
                System.out.print("Question " + (n+1)+":");
                System.out.println(questions[n].getQuestion());
                System.out.println(questions[n].getChoice());
                System.out.print("Enter your answer: "); 
                userInput = keyboard.nextLine();
                //Asking for users input reference to the question. 
                while(!userInput.equals("A")&&!userInput.equals("B")&&!userInput.equals("C")&&!userInput.equals("D"))
                {
                    System.out.println("invalid response");
                    System.out.print("Enter your answer: ");
                    userInput = keyboard.nextLine();

共有1个答案

司徒钱青
2023-03-14

我认为你已经非常接近你的解决方案了。这里有个建议。

由于您已经成功创建了Question类,您可以为该类编写一个额外的方法,该方法负责将问题的内容写入给定的文件。大概是这样的:

public class Question {
    //...

    public void write (PrintWriter out) {
        //TODO write your desired output
        out.println("This line will be written to whatever is given as parameter");
    }
}

然后,您可以创建一个文件,并将每个问题写入其中。例如,如果您有一个q,它将写入名为filename.txt的文件:

Question q = new Question(...);

PrintWriter writer = new PrintWriter("filename.txt");

q.write(writer); //Give the PrintWriter to the write method of Question class

writer.close();
 类似资料:
  • 我是java新手,我想知道如何读取。txt文件,然后将每一行都放入数组单元格中。.txt文件的格式必须如下所示: 我已经尝试创建一个以这种方式实现的ReadFile类:

  • 我读过其他一些类似于此的问题,但都使用了imports和extras,除了importjava.io.*之外,我不想使用任何imports;也没有任何名单。另外,这个is方法中的for循环是我在搞乱它,因为我无法弄清楚它。 }public static void main(string[]args)抛出IOException,FileNotFoundException{int[]array=pro

  • 问题内容: 对于请求和JSON,我是一个菜鸟。在我的应用程序内部,我发送到服务器并取回东西,因此我可以使用它。我尝试查找不同的东西,但似乎并没有真正找到我想要的东西。所以我找回了似乎格式化为JSON的内容。我想知道如何将其放入NSMutable数组中。我获取此JSON的方法是使用AFNetworking的AFJSONRequestOperation。 我的回应看起来像这样。 问题答案: 如果您的J

  • 我正在尝试将文件的内容放入数组中。文件内容是正整数和负整数。 这就是我所做的,以确定我应该使数组多大。inFile是我的扫描仪。我能够打印inFile的内容,但它们不会进入数组。我只得到空值。 这就是我试图将文件内容放入数组所做的。 谢谢你的帮助。

  • 我有两个JTextFields,分别称为字段1和字段2,目标是键入一个名称,当我点击返回时,将这些值存储在nameArray[]中的位置0和1。 我不确定原因是我的操作侦听器的逻辑还是我声明数组的方式。如果是这些事情中的任何一个… 数组是这样声明的,就在我的类声明的下面: 下面是我的动作监听器和field1初始化: 字段 2: 强制性堆栈: 测试时线程“AWT-event queue-0”Java

  • 问题内容: 我正在尝试将csv文件“ read_ex.csv”读入数组。我在web / stackoverflow上进行了无休止的搜索,以找到一种将文件读入数组的方法。我能做的最好的事情是以流方式读取它,但是由于文件大小可变,我无法将其存储在数组中。我相信ArrayList是处理可变大小数组的方法,但是我不知道如何使用它。本质上,我希望能够在while循环结束后访问String数组“ values