如何将我输入的文件中的答案与我正在阅读的文件集成?

时间:2013-11-16 18:04:55

标签: java

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

public class Kazarian_MadLibs {

    public static void main(String[] args) throws IOException {

        Scanner keyboard = new Scanner(System.in);
        File file = new File("Mad Libs 1.txt");
        Scanner inputFile = new Scanner(file);
        System.out.println("Please provide a word for each of the following: ");
        PrintWriter answers = new PrintWriter("answers.txt");
        inputFile.nextLine();

        for (int i = 0; i < 18; i++) {

            System.out.println(inputFile.nextLine());
            String answer = keyboard.nextLine();
            answers.println(answer);

        }
        answers.close();    
    }
}

我必须在一个文本文件和另一个文件中将我的答案放在一起,并将这两个文件以某种方式链接在一起。我怎么处理这个?我是否使用另一个循环?上面的代码是我到目前为止所提出的。它基本上将答案存储在单独的文本文件中

1 个答案:

答案 0 :(得分:0)

我这样做的方法是使用String.format()。将您的Madlibs.txt更改为:

蝙蝠侠是%1 $ c。在青少年时期,%1 $ c因父母谋杀而受到创伤,并发誓要将%2 $ c绳之以法,以报复他们的死亡事件。 %1 $ c利用他的财富研究犯罪学......

%符号表示“这是要格式化的”。 1 $表示“使用我给你的第一个变量”。 “c”表示“并将其视为字符串”。 (有关详细信息,请参阅java.util.Formatter。)

因此,请将每个输入读入List。将这些答案保存到文件中。然后做:

System.out.println(String.format(theStory,answers.toArray(new String [])));

这将采用“theStory”并将答案应用于此。