如何在Java中创建当前工作目录中的目录
在我的
Java应用程序的当前工作目录下创建名为“Foo”的目录的最简洁方法是什么(如果它还不存在)?
或者,稍微不同的角度:.NET中的Directory.CreateDirectory(“Foo”)的Java等价物是什么? 解决方法
java.io包没有Directory类,但您可以在File类上使用mkdir()方法:
(new File("Foo")).mkdir() 请注意,mkdir()有两种不同的故障模式: >“如果存在安全管理器并且其checkWrite()方法不允许创建指定目录”,则将抛出SecurityException. 第1点没问题 – 如果您没有权限,请抛出.由于三个原因,第2点略微次优: >您需要检查此方法的布尔结果.如果忽略结果,操作可能会无声地失败.
下一个警告是mkdir()一次不会创建多个目录.对于我名为“Foo”的目录的简单示例,这很好;但是,如果你想在目录Foo中创建一个名为Bar的目录(即创建目录“Foo / Bar”),你必须记住使用mkdirs()方法. 因此,要解决所有这些警告,您可以使用辅助方法,如下所示: public static File createDirectory(String directoryPath) throws IOException { File dir = new File(directoryPath); if (dir.exists()) { return dir; } if (dir.mkdirs()) { return dir; } throw new IOException("Failed to create directory '" + dir.getAbsolutePath() + "' for an unknown reason."); } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |