在Java桌面应用程序中创建本地存储目录

Bar*_*lom 6 java desktop-application

我正在构建一个Java桌面应用程序,需要存储一些本地数据(首选项和历史记录).为此,我想在适当的位置创建一个新文件夹,例如Windows中的AppData\myapp和Linux中的〜/ .myapp(以及Mac上预期的任何位置).

有什么好的,跨平台的方式呢?


我在这个网站上看到了几个问题,但是要么:

  • 提问者希望找到Windows的应用程序数据(不是跨平台)
  • 解决方案是创建一个文件夹user.home(Linux风格,而不是跨平台)这是我目前所做的,但我正在寻找一个改进.

npe*_*npe 0

使用user.home系统属性。像这样:

String userHomePath = System.getProperty("user.home");
File myAwesomeFolder = new File(useHomePath, "myAweSomeApp");
myAwesomeFolder.mkdirs();
Run Code Online (Sandbox Code Playgroud)