2013-08-21 247 views
-1

我做了一个方法,检查2个字符串传入自己,看看是否存在根文件夹和子文件夹,如果它们不存在,创建它们。检查文件夹和子文件夹

这很容易,它运作良好,但我唯一的问题是,当我想检查一个根文件夹只有它返回和错误,因为其中一个字符串是空的。

是否有智能的方式来检查像"/data","/data/files""/data/files/morefiles"这样的路径以查看是否所有文件夹都存在,如果不存在,创建丢失的文件夹?

+0

请后,你已经写的代码。 – Grammin

+1

[Create a folder if one does not exist]的可能重复(http://stackoverflow.com/questions/14666170/create-a-folder-if-one-doesnt-exist) –

+0

可能的重复[有没有在Java中检查文件/目录存在的正确方法?](http://stackoverflow.com/questions/7996524/is-there-a-proper-way-to-check-for-file-directory-existence-in- java) – Math

回答

3

有一种现成的方法可以创建所有缺失的父目录:File#mkdirs()

+0

http://docs.oracle.com/javase/6/docs/api/java/io/File.html#mkdirs%28%29 –

0

如果需要

String path;// Your path, that you get as parameter 
String[] pathArr = path.split("\\"); 
string str = pathArr[0]; 
int size = pathArr.size(); 

for(int i = 1; i < size ; i++) 
{ 
    // Check and create folder if needed 
    str = str + "\\" + pathArr[i]; 
} 
0
new File("/path/to/subdirectory").mkdirs(); 
1

您可以使用.mkdirs()方法,你可以采取的字符串,并将其使用后split("\\"); 分割,建立一个for语句的路径,每次检查和创建文件夹任何File对象

// Create a directory; all non-existent ancestor directories are 
// automatically created 
success = (new File("../potentially/long/pathname/without/all/dirs")).mkdirs(); 
相关问题