Я загружаю файлы с aws s3, используя API getObject. Простые текстовые файлы работают нормально, но при загрузке в формате PDF мой файл поврежден. Я использую FileOutputStream и сохраняю содержимое в файл, но сохраненный PDF-файл повреждается.
Я не совсем уверен в правильном API Java для этой цели и в том, каким должен быть размер массива байтов, в котором записываются прочитанные байты.
Мне также любопытно, имеет ли смысл использовать SDK напрямую, или есть API-интерфейсы с открытым исходным кодом, доступные в Java, которые я мог бы использовать.
FileOutputStream fout = новый FileOutputStream (новый файл (имя файла назначения));
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();