0

我的 java 应用程序几乎完成了,现在我要给它画龙点睛了。尽管某些代码需要从计算机上的特定目录中读取数据。在我的机器上,我通过以下方式完成了它:

FileOutputStream fos=new FileOutputStream(C:/User/AnirudhVarma/Document/Appname/foldername/file,true);

但是在用户机器上,我如何确保它在以下目录中创建它?

C:/enduser/appname/folder/file
4

2 回答 2

2

代码中的硬编码文件夹结构是非常糟糕的主意。

处理此问题的一种方法是:

您需要有一个类似于用户需要输入所需文件夹路径的属性文件。在安装文档中将此作为要求提及。

在您的代码中,您需要在继续之前确保文件夹具有所需的内容。如果文件夹无效,则仅显示错误消息以及设置目录路径的正确信息。

于 2012-11-20T05:50:38.003 回答
1

System.getProperty("user.dir")将返回C:/User/AnirudhVarma您的机器。从那里,我建议你需要考虑平台。在windows下,你应该将这类信息存储到AppData文件夹中。

所以你最终会得到类似的东西System.getProperty("user.dir") + File.seperator + "AppData/Appname/foldername/file"

在 MacOS 下,我相信惯例是.AppName改用,比如System.getProperty("user.dir") + File.seperator + ".Appname/foldername/file"

于 2012-11-20T06:14:57.380 回答