我有一个程序,它接收一个指向某个文件夹的文件。然后我需要创建两个单独的目录。例如,假设我有一个指向文件夹Base
的文件库。然后我想创建两个目录dir1和dir2。
我知道您执行以下操作:
//Called in constructor
File base = new File (baseFileLocString);
//Make directories
File dir1 = new File (base.getAbsoluteFilePate() + "/dir1");
dir1.mkdir();
File dir2 = new File (base.getAbsoluteFilePate() + "/dir2");
dir2.mkdir();
我不喜欢这种方式。理想情况下,我可以使用base
并创建目录,而无需创建新的Files
。我觉得应该有一个更有效的方法来做到这一点。是这样的情况还是没有?
答案 0 :(得分:1)
而不是
File dir1 = new File (base.getAbsoluteFilePath() + "/dir1");
您可以使用
File dir1 = new File (base, "dir1");
看起来更好,但性能将保持不变
答案 1 :(得分:1)
还有另一种选择
Files.createDirectory(Paths.get(base.getAbsoluteFilePath(), "dir1"));
除了它比File.mkdir更好,因为如果出现问题mkdir返回false而不进行expalnation,createDirectory会抛出一个异常来解释发生了什么