JavaFX桌面应用程序中的数据存储

时间:2016-05-30 10:45:16

标签: java sqlite javafx cross-platform desktop-application

我正在构建一个Java桌面应用程序,需要存储一些数据,所以我决定创建SQLite数据库,但我不知道应该在哪里保存它。我想使用一些跨平台的解决方案,它允许我将它保存在Windows中的AppData \ MyApplicationDirectory和Linux中的Home目录中的一些隐藏目录中(我想它应该在那里,对吧?)。有没有办法做到这一点?

1 个答案:

答案 0 :(得分:0)

我认为在某些版本的Windows上存在一个跨平台等效的AppData目录。

我在类似情况下通常做的就像你描述的Linux(和类似的)一样:在用户的主目录中创建一个隐藏目录:

String userHome = System.getProperty("user.home");
Path applicationDir = Paths.get(userHome, ".myApplication");
Files.createDirectories(applicationDir);
Path databaseFile = applicationDir.resolve("database.sqlite");
// etc...