美文网首页JavaJava 杂谈
File根据父级路径创建文件

File根据父级路径创建文件

作者: G_uest | 来源:发表于2019-05-06 20:07 被阅读0次

api文档介绍

  • public File(File parent,String child)
    从父抽象路径名和子路径名字符串创建新的File实例。
    如果parentnull则创建新的File实例,就像在给定的child路径名字符串上调用单参数File构造函数一样。
    否则,采用parent抽象路径名来表示目录,并将child路径名字符串用于表示目录或文件。 如果child路径名字符串是绝对的,那么它将以系统相关的方式转换为相对路径名。 如果parent是空的抽象路径名,那么新的File实例是通过将child转换为抽象路径名并根据系统相关的默认目录解析结果来创建的。 否则,每个路径名字符串将转换为抽象路径名,并且子抽象路径名将针对父对象进行解析。
  • public File(String parent,String child)
    从父路径名字符串和子路径名字符串创建新的File实例。
    如果parentnull则创建新的File实例,就像在给定的child路径名字符串上调用单参数File构造函数一样。
    否则,将使用parent路径名字符串来表示目录,并将child路径名字符串用于表示目录或文件。 如果child路径名字符串是绝对的,那么它将以系统相关的方式转换为相对路径名。 如果parent是空字符串,则通过将child转换为抽象路径名并根据系统相关的默认目录解析结果来创建新的File实例。 否则,每个路径名字符串将转换为抽象路径名,并且子抽象路径名将针对父对象进行解析。

简言之

  • File(File parent, String child)
    根据 parent 抽象路径名和 child 路径名字符串创建一个新 File 实例。

  • File(String parent, String child)
    根据 parent 路径名字符串和 child 路径名字符串创建一个新 File 实例。

    ps:如果parent==null 二者都会直接创建子文件


  • 当 parent != null

import java.io.File;

public class FileParentTest {

    public static void main(String[] args) {

        File parentFile = new File("/src/test");
        String parentString = "/src/test";
        File fileResult = new File(parentFile,"childFileTest.txt");
        File stringResult = new File(parentString,"childStringTest.txt");
        System.out.println(fileResult);
        System.out.println(stringResult);
    }
}

输出结果:

\src\test\childFileTest.txt
\src\test\childStringTest.txt
  • 当 parent==null

import java.io.File;

public class FileParentTest {

    public static void main(String[] args) {

        File parentFile = null;
        String parentString = null;
        File fileResult = new File(parentFile,"childFileTest.txt");
        File stringResult = new File(parentString,"childStringTest.txt");
        System.out.println(fileResult);
        System.out.println(stringResult);
    }
}

输出结果:

childFileTest.txt
childStringTest.txt

相关文章

网友评论

    本文标题:File根据父级路径创建文件

    本文链接:https://www.haomeiwen.com/subject/rivdoqtx.html