public static File mkdirsForFile(File file) { File dir = file.getParentFile(); if (dir != null) try { // is null if file is in current dir dir.mkdirs(); } catch (IOException e) { if (dir.isFile()) fail("Please delete the file " + f2s(dir) + " - it is supposed to be a directory!"); } ret file; } public static S mkdirsForFile(S path) { mkdirsForFile(new File(path)); ret path; }