使用java.io.File在Eclipse中创建一个或多个目录



我尽量让它变得简单。

示例:

File  f = new File("non_existing_dir/someDir");
System.out.println(f.mkdir());
System.out.println(f.mkdirs());

mkdir()mkdirs()都返回false°_°。如果我使用双反斜杠\(如"\non_existing_dir\someDir" BUT:

如果我在那之后进行.toURI(),我会收到:file:/Users/MyName/Desktop/%5Cnon_existing_dir%5CsomeDir/

如果我做.getPath(),我会收到:non_existing_dirsomeDir

如果我做.getCanonicalPath(),我会收到:/Users/MyName/Desktop/non_existing_dirsomeDir



所以我想有这样的结果:

.toURI()接收:file:/Users/MyName/Desktop/non_existing_dir/someDir/

.getPath()接收:/non_existing_dir/someDir

.getCanonicalPath()接收:/Users/MyName/Desktop/non_existing_dir/someDir


提前感谢大家。

如果non_existing_dir不存在,可以检查getParentFile()并使用mkdir()创建它。

还要避免操作系统与File.separator之间的问题。

String filename = "non_existing_dir"  + File.separator + "someDir";
File  f = new File(filename);
if (!f.exists()) {
    if (!f.getParentFile().exists()) {
         // make the dir
         f.getParentFile().mkdir();
    }
    f.mkdir();
}

相关内容

  • 没有找到相关文章

最新更新