Прошу подсказать. Почему так происходит? Задачу решил, по появляется ошибка.
Exception in thread "main" java.nio.file.NoSuchFileException: C:\Users\mdv106u\AppData\Local\Temp\temp-7050581724326206575.tmp -> D:\MyDownloads\secretPasswords.txt
at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:85)
at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
at java.base/sun.nio.fs.WindowsFileCopy.move(WindowsFileCopy.java:395)
at java.base/sun.nio.fs.WindowsFileSystemProvider.move(WindowsFileSystemProvider.java:292)
at java.base/java.nio.file.Files.move(Files.java:1426)
at com.javarush.task.task31.task3112.Solution.downloadFile(Solution.java:35)
at com.javarush.task.task31.task3112.Solution.main(Solution.java:18)
Видимо из-за того, что файл не создался по методу:
Paths.get(downloadDirectory.toString()+fileName)
Код реализованного метода:
URL url = new URL(urlString); //Создаем объект URL
String fileName = urlString.substring(urlString.lastIndexOf("/")); //Вычленяем имя скаченного файла
Path downloadFile = Paths.get(downloadDirectory.toString()+fileName); //Создаем новый файл
InputStream inputStream = url.openStream();
Path tempFile = Files.createTempFile("temp-", ".tmp");
Files.copy(inputStream, tempFile, StandardCopyOption.REPLACE_EXISTING);
inputStream.close();
Files.move(tempFile, downloadFile, StandardCopyOption.REPLACE_EXISTING);