用Swing做一个桌面应用程序,一般配置文件放在哪儿?

来源:百度知道 编辑:UC知道 时间:2024/06/03 02:20:55
用NetBeans,最终打包发布的是一个jar文件,给最终用户运行仅需java x.jar -jar就可以运行这个程序。

可是我这个程序里面需要保存一些配置,例如用户最后关闭窗体时的位置等等,存一个xml,一般保存到那里啊?能保存到自身的jar包里面吗?还是保存到jar包所在的目录?还是保存到用户目录%appdata%?

分别怎么实现?
一楼的开玩笑啊,Java Swing怎么会有.exe呢?

二楼的更开玩笑,Java还用xxx.ini啊?都是xml。
况且我是自己开发程序,不是研究别人的。我问的问题是配置文件放到什么目录。

问题1:配置文件保存在哪里?
回答:保存在随便的地方,可以保存在安装目录的conf中,也可以保存在操作系统的任何目录中,只要你能够在下次需要读取是读到那个文件即可。

问题2:可以不可以保存到jar文件中?
回答:可以,但很难很难!!这需要你了解JAR文件的压缩算法,然后把你的文件压缩进JAR中,或者,先调用JAR的解压缩程序,再将你的文件和JAR一起打包。

阐明3:用户目录应该如何找到?
一般我们需要给Swing一个安装程序,最好可以弄成像Windows的exe一样,这样,用户就会觉得你的Swing程序和exe没有任何区别,但是,你需要找到你jar所在的安装目录,一般这个目录就是你bat的启动文件夹的位置,不过,你也可以手动指定这个目录,调用这个方法即可,System.setProperty("user.dir","c:\abc");

阐明4:是否可以生成exe?
java的编译程序不能把JAR编译成exe,但是,可以用第三方工具,将JAR编译成exe,这样的工具很多,很好用,你可以搜搜,有的是。

阐明5:配置文件一定要用xml吗?
不一定啊!你可以任意的指定文件格式,之所以现在很多人都用xml是因为它们都很懒,你也可以用别的文件格式,最关键的一点是,JAVA读取的任何文件和文件名后缀无关,当然你可以用ini的文件后缀了。
我就比较喜欢把配置文件写成这样:

#DB服务器的接收数据的端口和写数据库的时间间隔
writetime=1
listenerport=10020
#DB服务器的地址
listenerip=127.0.0.1

你看一般的应用程序中 都有一个xxx.ini的文件
这个文件实际上和记事本没什么区别

你可以把你需要动态改变的参数 写在这个文件中...然后用户操作之后 就更新这个文件 就可以达到你说的效果了....

你点工程里有个.exe文件就是