我想通过java的mkdir方法创建一个目录。Java的mkdir失败
它失败的问题,我认为是因为访问限制。 Tomcat运行在tomcat7用户下,该文件夹的所有者也是tomcat7用户。每个子文件夹都有相同的所有者。但是这种方法仍然失败(路径是有效的)。
有没有人熟悉这样的问题? 谢谢
我想通过java的mkdir方法创建一个目录。Java的mkdir失败
它失败的问题,我认为是因为访问限制。 Tomcat运行在tomcat7用户下,该文件夹的所有者也是tomcat7用户。每个子文件夹都有相同的所有者。但是这种方法仍然失败(路径是有效的)。
有没有人熟悉这样的问题? 谢谢
public class TestClass6 {
public static void main(String[] args)
{
String path = "c:/folder1/folder2"; // path of the folder you want to create
File folder=new File(path);
boolean exist=folder.exists();
if(!exist){
folder.mkdirs();
}else{
System.out.println("folder already exist");
}
}
}
如果一个文件以“folder2”名称存在,此代码仍可能失败。你不应该只用'exists',而应该调用'isDirectory'。 – 2012-07-18 19:40:21
你应该先检查一下目录是否存在。如果该目录已经存在,则mkdir
返回false。 因此,伪代码是:
if exists(dir):
move on and do other things
else:
File f = new File(dir);
f.mkdir();
此外,还要确保你在目录w
(写)权限,你用你的基地目录。
注意,'的mkdir()'返回'FALSE'如果该目录已经存在。所有子文件夹是否存在?如果没有,使用'mkdirs()'。 – hmjd 2012-07-18 13:09:22
你能发布确切的错误信息吗? – 2012-07-18 13:09:55
是抛出SecurityException吗? – 2012-07-18 13:10:47