Скачивание файлов по URL в Java можно выполнить с использованием класса HttpURLConnection из стандартной библиотеки Java.
Вот пример кода, который позволяет скачивать файлы по URL:
import java.io.BufferedInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL; public class FileDownloader { public static void main(String[] args) { String fileUrl = "https://example.com/file.txt"; String savePath = "C:/Downloads/file.txt"; try { downloadFile(fileUrl, savePath); System.out.println("Файл успешно скачан!"); } catch (IOException e) { System.out.println("Ошибка при скачивании файла: " + e.getMessage()); } } public static void downloadFile(String fileUrl, String savePath) throws IOException { URL url = new URL(fileUrl); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); int responseCode = connection.getResponseCode(); if (responseCode == HttpURLConnection.HTTP_OK) { try (InputStream inputStream = connection.getInputStream(); BufferedInputStream bufferedInputStream = new BufferedInputStream(inputStream); FileOutputStream fileOutputStream = new FileOutputStream(savePath)) { byte[] buffer = new byte[1024]; int bytesRead; while ((bytesRead = bufferedInputStream.read(buffer)) != -1) { fileOutputStream.write(buffer, 0, bytesRead); } } } else { throw new IOException("Ошибка HTTP соединения. HTTP код: " + responseCode); } } }
В этом примере мы создаем метод downloadFile, который принимает URL файла и путь, куда его нужно сохранить. В методе мы открываем соединение с помощью класса HttpURLConnection, проверяем код ответа, и если код равен OK (200), то считываем данные из входного потока и записываем их в файл с помощью FileOutputStream.
В методе main мы вызываем downloadFile с URL файла для скачивания и путем, по которому его нужно сохранить.
Прежде чем использовать данный код, необходимо убедиться, что у вас есть соединение с Интернетом и что у вас есть достаточные права доступа для записи в указанную папку.
Также имейте в виду, что этот код выполняется синхронно и может заблокировать выполнение вашего приложения до завершения скачивания файла.