【发布时间】:2014-03-02 22:58:49
【问题描述】:
我正在制作一个简单的基于文本的纸牌游戏,用于解析文件的乐趣/练习。我有一个包含该卡所有规格的纯文本文件。我的卡片以“##########”分开。它们是多线的。现在,我只是希望能够随时提取任何一张卡的全部内容。例如,玩家选择角色 1,所以我只拉出卡片 1?怎么样?
EXAMPLE:
##########
CARD 1
Character Name:
Something Else:
##########
CARD 2
Character Name:
Something Else:
##########
Character Name:
Something Else:
##########
我怎样才能真正拆分卡片,以便我可以询问用户哪张卡片。 我不想像以前那样阅读这些行并打印出来。这是相当麻烦和令人费解的。 我的新尝试: ArrayList listForCard1 = new ArrayList(); 整数 selected_card = 1;
try {
String line;
FileReader fR = new FileReader("MyText.txt");
BufferedReader br = new BufferedReader(fR);
int x = 0;
Integer card = 1;
while ((line = br.readLine()) != null) {
ALines[x] = line;
x++;
if (line.contains("##########")) {
if ( card == selected_card) {
listForCard1.add(br.readLine());
// System.out.println(br.readLine());
break;
} else {
card++;
}
}
}
System.out.println("Done");
System.out.println(ALines[0]);
System.out.println(ALines[1]);
System.out.println(ALines[2]);
System.out.println(ALines[3]);
System.out.println(ALines[4]);
System.out.println(ALines[5]);
System.out.println(ALines[6]);
} catch (IOException e) {
e.printStackTrace();
}
}
【问题讨论】:
-
欢迎,试着多解释一下你的尝试,而不是转储代码。虽然它相当简单 - 所以我还是投了赞成票
-
@clancer 很公平。我现在会做更多的事情。谢谢!
标签: java parsing text-parsing string-parsing