从instructions.txt
的{{1}}中以instructions.java
的逗号分隔方法读取,以便可以将其呈现到InstructionsController
上的TextArea
中。
一旦我读完文件,就很难弄清楚如何将Instructions.xml
传递给另一个类以成功使用该数据。
使用ArrayList
中的about
作为handle
类中的测试按钮。
Instructions.java
InstructionsController
InstructionsController.java
public class Instructions {
private String[] identifier;
private ArrayList<String> listName;
private ArrayList<String> listDesc;
public void dataLoader() {
String fileName = "instructions.txt";
Scanner scan;
/*
* Shows working path System.out.println(newFile(".").getAbsoluteFile());
*/
try {
scan = new Scanner(new File(fileName));
// Iteration rather than iterable
while (scan.hasNext()) {
int i = 0;
String line = scan.nextLine();
identifier = line.split(">");
if(identifier[i].equals("TITLE")) {
listName.add(identifier[i+1]);
} else if (identifier[i].equals("DESC")) {
listDesc.add(identifier[i+1]);
} else if (identifier[i].equals("END")) {
i++;
}
}
scan.close();
} catch (FileNotFoundException exception) {
System.err.println("Failed to open instructions");
System.exit(1);
}catch (Exception e) {
e.printStackTrace();
}
}
public ArrayList<String> getListName() {
return listName;
}
public void setListName(ArrayList<String> listName) {
this.listName = listName;
}
public ArrayList<String> getListDesc() {
return listDesc;
}
public void setListDesc(ArrayList<String> listDesc) {
this.listDesc = listDesc;
}
}
示例文字 文件输入:instructions.txt
TITLE>职业津贴:
DESC>投资者:从$ 150奖金“启动现金”开始,总共有650美元的“启动现金”。 农夫:以250磅的“食物”开始,并且有特权以75%的速度为聚会消费食物。 杂工:“旅行车”崩溃的可能性大大降低。
END>
答案 0 :(得分:0)
您可以尝试在第二个类文件中创建第一个类的实例。或者,您可以尝试将“获取”方法设置为静态。看一下以前的答案。
您需要创建A类的实例,然后访问B类的值,例如:
public class ClassA {
private int someInt;
public ClassA() {
someInt = 5;
}
public int getSomeInt() {
return someInt;
}
}
public class ClassB {
public void someMethod() {
ClassA instanceOfClassA = new ClassA();
int someIntFromClassA = instanceOfClassA.getSomeInt(); //This is now 5;
// Rest of your code here
}
}
或者,您可以在
ClassA
中将其创建为静态方法,然后使用ClassB
在ClassA.getSomeInt();
中对其进行调用