Java 为什么要使用FileUtils.forceMkdir?
Apache commons io中的Java 为什么要使用FileUtils.forceMkdir?,java,apache-commons,apache-commons-io,Java,Apache Commons,Apache Commons Io,Apache commons io中的FileUtils.forceMkdir而不是JRE中内置的File.mkdirs有什么用 到forceMkdir的文档如下 创建一个目录,包括任何必要但不存在的父目录。如果已存在具有指定名称的文件,但该文件不是目录,则会引发IOException。如果目录无法创建(或不存在),则会引发IOException 而mkdirs的文档 创建以此抽象路径名命名的目录,包括任何必要但不存在的父目录。请注意,如果此操作失败,它可能已成功创建一些必要的父目录 引发异常类
FileUtils.forceMkdir
而不是JRE中内置的File.mkdirs
有什么用
到forceMkdir
的文档如下
创建一个目录,包括任何必要但不存在的父目录。如果已存在具有指定名称的文件,但该文件不是目录,则会引发IOException。如果目录无法创建(或不存在),则会引发IOException
而mkdirs
的文档
创建以此抽象路径名命名的目录,包括任何必要但不存在的父目录。请注意,如果此操作失败,它可能已成功创建一些必要的父目录
引发异常类型的唯一区别是什么?看起来主要区别在于Apache commons的实现“声音更大”:如果要创建的目录已经存在,它将引发异常,但实际上它是一个文件。看起来这个想法是为了包装JRE实现,在目录创建失败的情况下返回
false
,而不是异常。注意Path
是文件
的更新和更通用的类。看看哪一个也一样。使用JRE版本,Files
@JoopEggen是否有一些技术原因使我想使用Files
实现而不是File
?它是较新的代码,就像使用List而不是ArrayList一样,路径可以是zip中的文件(一个zip文件系统,带有URI jar:File:/…)。新的和旧的样式函数之间有一些细微的差别,但在这里不重要