Не могу скачать файл с URL в Java

Я делаю программу, которая будет загружать файлы с URL. Загрузка всегда начинается, но она не завершена. Например, если размер файла составляет 3 МБ, программа загружает только половину этого файла, поэтому я не могу открыть загруженный файл. Но программа говорит, что файл загружен успешно.

public class FileDownloader {

    public static void main (String [] args) throws IOException {

        InputStream fileIn;
        FileOutputStream fileOut;
        Scanner s = new Scanner(System.in);

        System.out.println("Enter URL: ");
        String urlStr = s.nextLine();

        URL url = new URL(urlStr);
        URLConnection urlConnect = url.openConnection();
        fileIn = urlConnect.getInputStream();

        System.out.println("Enter file name: ");
        String fileStr = s.nextLine();
        fileOut = new FileOutputStream(fileStr);

        while (fileIn.read() != -1) {   
            fileOut.write(fileIn.read());
        }
        System.out.println("File is downloaded");
    }
}

Так как я могу решить это? Следует использовать другой способ загрузки?

Ответы на вопрос(3)

Ваш ответ на вопрос