Я загружаю файлы из aws s3 с помощью API getObject. Простые текстовые файлы работают нормально, но при загрузке pdf мой файл поврежден. Я использую FileOutputStream и сохраняю содержимое в файл, но сохраненный PDF-файл поврежден.
Я не совсем уверен в том, какой правильный API Java следует использовать для этой цели, и каким должен быть размер байтового массива, в который записываются прочитанные байты.
Мне также любопытно, имеет ли смысл использовать SDK напрямую или есть доступные в Java API-оболочки с открытым исходным кодом, которые я мог бы использовать.
FileOutputStream fout = новый FileOutputStream (новый файл (destFileName));
byte[] b = new byte[8192];
int bytesRead;
while (true) {
bytesRead = input.read(b);
System.out.println("bytesRead = "+bytesRead );
if (bytesRead==-1)
break;
fout.write(b);
}
fout.flush();
fout.close();