我无法理解以下文件构造函数.
public File(String parent, String child) and
public File(File parent, String child)
Run Code Online (Sandbox Code Playgroud)
文件的参数parent和child含义是什么?我什么时候可以使用这些?我做了几个与文件相关的程序,但我从未使用过这些程序.我经常使用
public File(String pathname)
Run Code Online (Sandbox Code Playgroud)
我已经阅读了java文件文档,但我无法弄清楚何时以及如何使用这些构造函数.有人可以解释并举例说明.
FTh*_*son 25
该parent参数是child文件名或相对文件路径的父目录.
parentFile实例在哪里,它是一个目录文件.parentString 在哪里,它就是那个目录pathname.
考虑以下部分文件系统:
Documents
Homework
Classwork
Tests
Run Code Online (Sandbox Code Playgroud)
您可以将Documents目录声明为文件,而不是使用"Documents\Subdir"声明每个新文件,并将其用作parent其他File实例的File,如下所示:
File documents = new File("Documents");
File tests = new File("Documents/Tests"); // new File(String);
File homework = new File(documents, "Homework"); // new File(File, String)
File classwork = new File("Documents", "Classwork"); // new File(String, String)
Run Code Online (Sandbox Code Playgroud)
根据我的经验,我使用的应用程序提供的API包含一个方法,该方法返回允许第三方"插件"保存/读取文件的目录文件.如果没有File(File, String)构造函数,我需要将目录文件转换为绝对路径并将目标文件追加到它.
在以下示例中,Environment.getProgramDirectory()返回授予权限的目录文件.
File settingsFile = new File(Environment.getProgramDirectory(), "settings.txt");
Run Code Online (Sandbox Code Playgroud)