如何在Android中的SD卡上创建动态目录结构?

时间:2012-09-24 11:08:51

标签: android file directory creation

我想在SDCard上使用给定路径自动创建目录,该路径包含文件的完整路径。路径是从服务器动态传递的,所以我不知道这些目录的名称是什么,以及目录结构的深度是多少。

e.g。 DIR1 / DIR2 / DIR3 / FILE1.TXT

我正在使用以下代码

createDirectoryIfNotPresent(Environment.getExternalStorageDirectory() + "/"+ mypaths.getNextPath());

的定义
createDirectoryIfNotPresent

private void createDirectoryIfNotPresent(String fileName) {
    File f = new File(fileName);

    if(!f.exists())
        f.mkdirs();
}

但上面的代码也为file1.txt创建了目录。我该如何避免这种情况?我只想为目录名而不是文件名创建目录。

1 个答案:

答案 0 :(得分:1)

你可以做一些简单的事情,检查文件名是否包含.txt或其他扩展名

if(f.toString.contains(".txt")) {
f.createNewFile();
} else {
f.mkdirs();
}

如果扩展程序不断变化,您甚至可能会使用正则表达式。