这是我的第一篇文章,但我会直截了当。
我正在尝试用Java做一个测验。我的应用程序在当前状态下,从文本文件中读取问题,按换行符拆分问题,返回数据并使用扫描仪循环访问列表以检查输入以与存储的答案进行比较...好吧,还不是后一点。
一切都很好,但问题是我只有问题。我无法思考如何在文本文件中构建问题和答案,然后将其分解为某种可以在控制台中呈现给用户的数组结构。
所以,基本上,我想把问题,答案选择和正确答案都存储在一行上......或者,我可以以有效的方式完成所有这三件事。我假设我会用换行符来分隔,然后用其他一些字符来分隔我需要的每行的三个部分。我该从那里去哪里,如何?一旦我把它全部分解,我该如何跟踪哪个去哪里?
我对短篇小说的方法表示歉意。我到处寻找适合我需求的指南或教程。我也应该警告你...我对Java很陌生,我知道有更好的方法来做我需要的事情,所以,请......以一种新人可以理解的方式为我分解它。
我希望这一切都是有道理的。如果这在其他地方重复或太宽泛,请指导我去哪里,以便我可以学习。无论如何,这是我的代码!
问题数组.java
import java.util.ArrayList;
public class QuestionArray {
private static ArrayList<String> list = new ArrayList<String>();
public static Object[] processFile() {
String file = FileStuff.fileAsString("res/questions/questions.txt");
String[] lines = file.split("\n");
for (int i = 0; i < lines.length; i++) {
list.add(lines[i]);
} return list.toArray();
}
}
FileStuff.java
import java.io.BufferedReader;
import java.io.IOException;
import java.io.FileReader;
public class TextFileStuff {
public static String fileAsString(String path) {
StringBuilder builder = new StringBuilder();
try {
BufferedReader br = new BufferedReader(new FileReader(path));
String line;
while((line = br.readLine()) != null)
builder.append(line + "\n");
br.close();
} catch (IOException e) {
e.printStackTrace();
} return builder.toString();
}
}
慕容3067478
相关分类