Таблица 3 – Особенности использования метода getParent()
Код
|
Результат
|
tring str = "c:\\windows\\projects\\note.txt"; Path path =
Path.of(str).getParent();
|
Строка
"c:\\windows\\projects\\"
|
String str =
"c:\\windows\\projects\\"; Path path =
Path.of(str).getParent();
|
Строка "c:\\windows\\"
|
String str = "c:\\"; Path path =
Path.of(str).getParent();
|
null
|
getRoot() — возвращает «корневую» директорию; то есть ту, которая находится на вершине дерева каталогов (Таблица 4);
Таблица 4 – Пример кода использующего метод getRoot()и результат его примерерния
Код
|
Результат
|
tring str = "c:\\windows\\projects\\";
Path path = Path.of(str).getRoot();
|
Строка "c:\\"
|
startsWith(), endsWith() — проверяют, начинается/заканчивается ли путь с переданного пути.
Пример.
Результаты работы программы:
Замечание.
В метод endsWith() нужно передавать именно полноценный путь, а не просто набор символов: в противном случае результатом всегда будет false.
При работе с файлами следует также знать следующую терминологию. Путь может быть одним из двух типов:
абсолютный путь - начинается с корневой директории, например, для Windows это может быть папка c:\, а для Linux - это директория /;
относительный путь – путь определяемый относительно текущего рабочего каталога. Если это путь к файлу, расположенному во вложенных папках текущего рабочего каталога, то это как бы конец пути, но только без начала. Относительный путь можно превратить в абсолютный и наоборот.
Для работы с путями существует несколько методов, в частности рассмотрим следующие:
boolean isAbsolute() - метод проверяет, является ли текущий путь абсолютным;
Path toAbsolutePath() – метод превращает путь в абсолютный, если нужно — добавляет к нему текущую рабочую директорию;
Path normalize() – метод позволяет в указанном пути вместо имени директории (папки) писать «..», и это будет означать вернуться на одну директорию (папку) назад;
Path relativize(Path other) - метод позволяет вычислить «разницу путей»: один путь относительно другого;
Path resolve(Path other) - метод выполняет операцию, обратную relativize() (из абсолютного и относительного пути он строит новый абсолютный путь).
Кроме того существует метод File toFile(), возвращающий объект File, который хранит тот же путь к файлу, что и объект Path.
Достарыңызбен бөлісу: |