Всем привет! Написала такой простенький код:
public class Solution {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String str = scanner.nextLine();
try {
Path path = Path.of(str);
if (!path.isAbsolute()) {
path = path.toAbsolutePath();
}
System.out.println(path);
} catch (InvalidPathException e) {
System.out.println("Вы ввели некорректный путь");
}
}
протестила на таком каталоге: jdk-17\bin.
Он у меня на компьютере сразу есть в двух директориях, одна начинается с C:\Program Files, вторая — с C:\Users, метод вывел вторую. Также попробовала просто забить имя директории (которая также в двух экземплярах — на рабочем столе и в загрузках — метод вывел просто C:\Stickerpacks (хотя напрямую на диске С эта директория не лежит).
Почитала реализацию метода — не нашла причину такого поведения. А узнать её хочу, чтобы знать, как добиться, чтобы метод возвращал нужный путь