有没有办法在我的 Java 应用程序的主目录中创建一个文件夹(具有特定名称)。我的游戏中有一个用户系统,每当创建新用户时,我希望它创建一个文件夹来存储所有进度(文件夹名称应该是他们输入的名称)。
例如:
由此:
为此(只需在游戏中输入用户名):
有没有办法在我的 Java 应用程序的主目录中创建一个文件夹(具有特定名称)。我的游戏中有一个用户系统,每当创建新用户时,我希望它创建一个文件夹来存储所有进度(文件夹名称应该是他们输入的名称)。
例如:
由此:
为此(只需在游戏中输入用户名):
从这个论坛:
File f = new File("TestDir");
try{
if(f.mkdir())
System.out.println("Directory Created");
else
System.out.println("Directory is not created");
}catch(Exception e){
e.printStacktrace();
}
定义“Java 应用程序的主目录”?没有这样的野兽。
出于安全考虑,您在执行此类操作时要非常小心。最好在属性文件中定义一个目录并将其用作应用程序的基本目录。然后,正如已经说过的,它只是.mkdir{,s}()
用来实现你想要的。
@C.Reed 也正确地说你应该检查mkdir()
' 的返回值:Java 的 File API 有很大的缺陷,它不会在目录/文件创建/移动失败时抛出异常。幸运的是,Java 1.7 将通过其新的 API 解决这个问题。
(我遇到的一个例子是看到.move()
一个文件失败的代码:问题是它在开发机器上工作,但在生产机器上,目录要移动到另一个文件系统上——>破坏)
提示:使用 Apache 的commons-io
在已知且可重现的路径2的子目录1中建立目录。
user.home
- 它应该是游戏可以读取和写入的目录。如果主目录是您的应用程序的工作目录,您可以创建一个目录
new File("new-dir").mkdir();