2013-09-23 36 views
2

我已经编码了大约一个月,并且我找到了适应周围问题的方法,但只有一个。问题可以从标题中看出来,就是如何制作一种节省游戏的方法。我目前正在创建一个非常简单的游戏,其中包含大约5个类的代码和2个Java Swing GUI。保存游戏关卡设置

我知道如何去保存过程,但我不知道如何在我的代码中执行此操作。我想这样做的方法是让代码打印一个Number或Integer来表示一个Level。例如,如果你完成了1级,文件中的数字就是1.我已经尝试过一些模板,但没有一个能够工作。

我明白如何写入文件,但我的问题是从jar中读取它甚至创建文件,然后从计算机上的某个位置读取它。我需要知道如何找到不同计算机的文件URL,因为有些使用文档和设置以及其他用户。请有人帮忙。

回答

1

由于jar是只读的,它只能包含'默认设置'。请参阅this answer了解处理这种的一般策略。

说到哪些(嵌入式资源),请参阅info. page了解有关如何访问它们的更多详细信息。

以下是storing and reading a Properties file from the 'current directory'的示例。

正如@MadProgrammer虽然提到的,它是最安全的把文件设置成user.home一个(子目录),如this answer看到。


但是属性文件只是一个选项。您也可以序列化一个对象,或者以您的应用程序的自定义格式写入文件。知道如何阅读,头两个头顶。

除了“在File连载(以某种形式)”,里面还有Preferences API,或桌面应用程序使用Java Web StartPersistenceService启动。这是一个demo. of the service

1

我需要知道如何找到一个文件的URL为不同的计算机,因为 一些使用文档和设置等用户

System财产user.home指向用户的主目录

File userHome = new File(System.getProperty("user.home")); 
+0

也许OP也可以使用'java.lang.prefs'包,因为这与操作系统无关。 –

+0

MadProgrammer你能解释多一点 – Oak

+0

@EricJablow或'属性',但OP确实说明他们知道如何写一个文件... – MadProgrammer