您不应将游戏数据保存到 Java 文件中。这没有道理。 Java 文件用于存储 Java 源代码,而不是您的游戏数据。
您应该将您的游戏数据写入其他文件,并在程序启动时读取。
您基本上使用ObjectOutputStream 和ObjectInputStream 来执行此操作。
就在用户关闭程序之前,您创建一个新的ObjectOutputStream:
FileOutputStream fos = new FileOutputStream("The/Path/That/You/Want/The/Data/File/To/be");
ObjectOutputStream stream = new ObjectOutputStream(fos);
然后,您将所有游戏数据(您的整数和字符串)放入一个实现 Serializable 的 POJO 中。之后,将此 POJO 写入该文件。
这是 POJO 类:
public class GameData implements Serializable {
private int int1, int2, int3;
private String s1, s2, s3;
// getters for the fields
public GameData(int int1, int int2, int int3, String s1, String s2, String s3) {
this.int1 = int1;
this.int2 = int2;
this.int3 = int3;
this.s1 = s1;
this.s2 = s2;
this.s2 = s3;
}
}
然后你像这样保存数据:
GameData data = new GameData(someInt1, someInt2, someInt3, someStr1, someStr2, someStr3);
stream.writeObject(data);
当您想读回数据时,只需创建一个FileInputStream 和一个ObjectInputStream 并将读取的对象转换为GameData,您就可以取回所有的整数和字符串!