Я создал программу, которая получает доступ к некоторым URL-адресам и загружает оттуда PDF-файлы. Файлы варьируются от 2 до 40 МБ. Программа работает без проблем но есть ли способ улучшить производительность на этом? Для больших файлов это занимает много времени.
Код ниже - тот, который используется для чтения / записи файла. Это вызвано в for l oop с другим fileNameURLPath.
@Override
public void downloadFile(String fileNameURLPath, String titleCellValue) throws FileException {
try (BufferedInputStream inputStream
= new BufferedInputStream(new URL(fileNameURLPath).openStream())){
FileOutputStream fileOS = new FileOutputStream(FileConstants.MandatoryDownloadProperties.path + titleCellValue + ".pdf");
byte data[] = new byte[32*1024];
int byteContent;
while((byteContent = inputStream.read(data,0 , data.length)) != -1) {
fileOS.write(data, 0 , byteContent);
}
inputStream.close();
fileOS.close();
} catch (MalformedURLException e) {
throw new FileException("Error while processing url. Make sure it is correct");
} catch (IOException e) {
throw new FileException("Error while downloading file. Make sure the download path is correct");
}
}
Я читал кое-что о Java NIO, но я не мог понять это, или если это может помочь мне в этой ситуации