Я пытаюсь загрузить некоторые изображения, предоставленные хостером. Это метод, который я использую:Слишком большие файлы при загрузке Piktogramms
public static void downloadImage(String imageLink, File f) throws IOException
{
URL url = new URL(imageLink);
byte[] buffer = new byte[1024];
BufferedInputStream in = new BufferedInputStream(url.openStream(), buffer.length);
BufferedOutputStream out = new BufferedOutputStream(new FileOutputStream(f), buffer.length);
while (in.read(buffer) > 0)
out.write(buffer);
out.flush();
out.close();
in.close();
}
Однако файл оказывается слишком большим. 5MB для 80x60 JPG слишком много, на мой взгляд.
Что может быть причиной этого?
сделайте себе одолжение и использовать библиотеку для этого. Моей любимой для потоковой копии является Apache Commons IOUtils (https://commons.apache.org/proper/commons-io/javadocs/api-release/org/apache/commons/io/IOUtils.html#copy(java.io. InputStream,% 20java.io.OutputStream)) –
Добро пожаловать; спасибо за быстрое принятие. – GhostCat
И стороны отметить; Я согласен с Томасом: если это не какое-то «упражнение в области образования», вам лучше использовать библиотеку для этого. – GhostCat