JAVA有没有办法只使用一个java文件(类…)保存/加载整个游戏/应用程序?
我不知道java中是否有任何方法可以仅使用一个脚本(java文件、类…)保存和加载整个游戏/应用程序 例如,如果我在许多java文件中创建了许多int和string,有没有办法只使用一个脚本保存它们。当我关闭游戏/应用程序时(JAVA有没有办法只使用一个java文件(类…)保存/加载整个游戏/应用程序?,java,save,load,Java,Save,Load,我不知道java中是否有任何方法可以仅使用一个脚本(java文件、类…)保存和加载整个游戏/应用程序 例如,如果我在许多java文件中创建了许多int和string,有没有办法只使用一个脚本保存它们。当我关闭游戏/应用程序时(System.exit(1);),当我返回游戏时,它将自动加载(我不会丢失我的统计数据) 有什么方法可以做到这一点吗?您不应该将游戏数据保存到Java文件中。这毫无意义。Java文件用于存储Java源代码,而不是游戏数据 您应该将游戏数据写入其他文件,并在程序启动时读取 基
System.exit(1);
),当我返回游戏时,它将自动加载(我不会丢失我的统计数据)
有什么方法可以做到这一点吗?您不应该将游戏数据保存到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);
然后,将所有游戏数据(整数和字符串)放入一个POJO中,该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
,您就可以取回所有的整数和字符串 对!!将保存
和加载
代码粘贴到一个文件中。祝你好运你在说什么样的游戏/应用程序?如果需要,可以将所有这些文件保存在数据库中。Tnx。谢谢你的回答