高手们讲讲file类的mkdir方法和mkdirs方法把 最好有代码 (新手)

解决方案 »

  1.   

    File file = new File("xxxxxxxx");file.mkdir();File file = new File("Parent","child");file.mkdirs;
      

  2.   

    没啥可说的,对着API TEXT下就全明白了
      

  3.   

    boolean mkdir() 
              创建此抽象路径名指定的目录。 
     boolean mkdirs() 
              创建此抽象路径名指定的目录,包括创建必需但不存在的父目录。 
    ps:摘自DOC,建议楼主去查查api去
      

  4.   

    文档说的象天书! 我给点实际点的解释:
    mkdir():只能创建一层目录. 
    如: File file = new File("c:/aa");
        file.mkdir(); //这样可以在c:/下创建aa目录
    假如有多层目录,则不能用mkdir创建:File file = new File("c:/aa/bb"); file.mkdir() //这样创建不了.
    应该改为:
    mkdirs():
      

  5.   

    mkdir():当要创建的目录的父目录不存在时将创建失败
    mkdirs():无论要创建的目录的父目录寸步存在都能创建成功
      

  6.   

    看看api的实现吧    public boolean mkdirs() {
    if (exists()) {
        return false;
    }
    if (mkdir()) {
          return true;
      }
            File canonFile = null;
            try {
                canonFile = getCanonicalFile();
            } catch (IOException e) {
                return false;
            }
    String parent = canonFile.getParent();
            return (parent != null) && 
                   (new File(parent, fs.prefixLength(parent)).mkdirs() &&
                                        canonFile.mkdir());
        }如果mkdir()为true mkdirs就已经返回了。只有在mkdir为false的时候才继续创建parent路径.
    mkdirs的返回声明:
    当且仅当已创建该目录以及所有必需的父目录时,返回 true;否则返回 false
      

  7.   

    mkdirs():无论要创建的目录的父目录寸步存在都能创建成功 这句好像是错的吧