Ответ 1
Описание
Параметр parent
является родительским каталогом имени файла child
или относительного пути к файлу.
Где parent
- это экземпляр файла, это файл каталога. Где parent
- это строка, это просто этот каталог в терминах pathname
.
Примеры
Рассмотрим следующую частичную файловую систему:
Documents
Homework
Classwork
Tests
Вместо того, чтобы объявлять каждый новый файл с помощью "Documents\Subdir", вы можете объявить каталог Documents как файл и использовать его в качестве файла parent
для других экземпляров файла, например:
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)
Реальное приложение
По моему опыту, я использовал приложения, которые предоставляют API, содержащий метод, который возвращает файл каталога, в котором сторонним "плагинам" разрешено сохранять/читать файлы. Без конструктора File(File, String)
мне нужно было бы преобразовать файл каталога в абсолютный путь и добавить к нему свой целевой файл.
В следующем примере Environment.getProgramDirectory()
возвращает файл каталога, в котором разрешены разрешения.
File settingsFile = new File(Environment.getProgramDirectory(), "settings.txt");