java - 如何在用户的 AppData 目录中创建目录和文件?

标签 java windows appdata

所以,我正在创建一个游戏,需要创建目录来存储所有用户的数据和保存等等。如您所见,我需要在用户的应用程序数据文件夹中创建一个名为“[WarDungeon]”的文件夹,在那里,我将存储此类数据的其他文件夹,例如关卡、bin、 Sprite 等。

我对使用 Mac OS 和 Linux 不太感兴趣,因为我想让 %appdata% 文件夹开始与 Windows 一起使用。

这是我的代码:

public FileManage() {
    gamePath  = System.getenv("APPDATA") + "[WarDungeon]";
    gameLevelPath  = System.getProperty("user.home") + "\\Local Settings\\ApplicationData\\[WarDungeon]\\level";
    gameBinPath  = System.getProperty("user.home") + "\\Local Settings\\ApplicationData\\[WarDungeon]\\bin";

    File createDir1 = new File(gamePath);
    createDir1.mkdir();

    System.out.println("First test passed.");

    if (createDir1.exists() == true) {
        System.out.println("First directory created!");
    }
}

如何解决这个问题?

提前致谢,:)

最佳答案

我意识到这个问题已经有两年了,但由于这是在谷歌搜索“java store in appdata”时的第一个结果,我决定为 future 的谷歌用户添加一个正确的答案。

问题被标记为 Java,OP 发布了 Java 代码,但接受的答案是 .NET(不是 Java)。

直接引用自this answer :

System.getenv("APPDATA")

这将提供用户的 AppData 文件夹的位置(在 Windows 中)。通过执行以下操作,您可以获得类似于 OP 想要的结果:

File characterFolder = new File(System.getenv("APPDATA") + "\\" + characterName);

关于java - 如何在用户的 AppData 目录中创建目录和文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18906163/

相关文章:

java - kafka分区可以分布在多个kafka集群节点上吗?

windows - 如何在后台从命令行启动 GUI 应用程序?

windows - 是否有一种编程方式来检测进程是否可以与桌面交互

vb6 - 将 VB6 的数据文件夹移出程序文件

java - 在 Ubuntu 上安装 Jetty,获取 com.sun.tools.javac.Main 不在类路径上

java - 如何使用Java Jersey处理不确定的Json

java - 避免 Android 中 EditText 的解析错误

python - Azure 上带有 Windows Docker 容器的 Django Web 应用程序 : Invalid HTTP_HOST header: '10.40.0.7:30015' . 您可能需要将 '10.40.0.7' 添加到 ALLOWED_HOSTS

asp.net-mvc - ASP.Net MVC SQLExpress 生产环境更新场景

c# - 我如何获得正确的应用程序目录?