我正在制作一个程序,需要保存对象以便在将来的某个日期进行检索。这个程序将作为一个jar文件分发给不同的人。
当给对象输入/输出流一个绝对路径(String)作为参数时,我已经可以存储和检索类的实例。我还可以将图像和文本文件保存在“资源”文件夹中,并使用getClass().getResource(String path)将其作为资源。
问题是:我已尽一切可能将对象保存到/从资源文件夹中获取对象。处理URLS和文件变得非常奇怪,而不是普通的String。有人能帮帮我吗?我需要能够保存和检索相对于类路径的对象,以便在程序是保存在计算机上不同路径中的jar文件时访问对象。
发布于 2015-12-13 09:02:18
1:资源文件夹(在jar中)是只读的.
您可以创建数据,在打包时存储在jar中,但是之后,它就完成了:只有读取。
他说:所以你想让用户可以读写(而且它没有嵌入到你的应用程序中)。
在我的电脑上,它给出:
C:\Users\develop2\AppData\Roaming
C:\Users\develop2\Local Settings\ApplicationData
C:\Users\develop2\AppData\Local参见:What is the cross-platform way of obtaining the path to the local application data directory?
就像这样:
String programdata = System.getenv("PROGRAMDATA");
System.out.println(programdata);
String allusersprofile = System.getenv("ALLUSERSPROFILE");
System.out.println(allusersprofile); // same thing !
String publicdir = System.getenv("PUBLIC");
System.out.println(publicdir);https://stackoverflow.com/questions/34248404
复制相似问题