当我们要加载静态文件时,例如图片,声音文件,包含游戏地图信息的文件......我们可以将它们作为资源存储在jar文件中,并使用getClass.getResource("images/splash.png")
(也getResourceAsStream
)来加载和使用它们。但是当我们想要读取和写入设置文件这样的文件时,我不认为使用资源是一种好方法,因为我认为资源是用来存储不应该的只读文件改变,如闪屏图像或游戏的背景音乐;这些是我这样思考的理由:
getResourceAsStream
的返回值是InputStream
的一个实例,而我们没有类似的函数给我们OutputStream
,因为我们不应该改变资源文件。.jar
文件,我想这根本不是一件好事;因为如果我们这样做:我们不能使用校验和来验证文件,如果我们是有限的用户并且系统管理员没有给我们写入权限,我们就无法更改主.jar
文件,用户特定的偏好很难或不可能实现,...... 所以,我的问题是:
(@某些用户可能希望将其标记为重复:我不认为我的问题是重复的,我在网站上搜索过,我承认它有一些常见的部分有一些问题,但它不重复!)< / p>
答案 0 :(得分:4)
上述#2中的三个观察结果是不将设置存储在资源文件中的正当理由,无论提供哪种API。
有多种方法可以在Java中保存设置,包括: