-1

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

例如 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 创建了目录。我该如何避免这种情况?我只想为目录名而不是文件名创建目录。

4

1 回答 1

1

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

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

如果扩展名不断变化,您甚至可以求助于使用正则表达式。

于 2012-09-24T11:14:45.143 回答