При попытке загрузить файл с помощью библиотеки apache httpclient возникла проблема с тем, что результирующий файл меньше исходного (примерно 32-32 КБ, когда нормальный размер файла 92-93) и не может быть нормально открыт в средстве просмотра PDF.Может кто-нибудь объяснить мне, почему это может происходить?(Использование Firefox для загрузки этого файла иногда может привести к полной загрузке файла, а иногда к частичной загрузке)
Вот код, который я использовал для загрузки файла по URL
URL url = new URL("pathtofile");
final URLConnection connection = url.openConnection();
final InputStream is = connection.getInputStream();
FileOutputStream fos = new FileOutputStream("C://result1.pdf");
byte buffer[] = new byte[1024];
int bytesRead;
while ((bytesRead = is.read(buffer)) >= 0) {
fos.write(buffer, 0, bytesRead);
}
fos.flush();
fos.close();
is.close();
PS Пыталсязагрузка этого файла с использованием библиотеки Apache HttpClient, тот же результат.
ОБНОВЛЕНО: Отслеживание трафика с помощью сетевого инструмента Я обнаружил разницу между получением файла через Firefox и приложением.
С Firefox первый HttpPayloadLine был:
HTTPPayloadLine: 83 Td
/F2 5.80476 Tf
(A:\040Asinis\04017.12.10\04008:32\040laboratorij) Tj
100 Tz
1 1 1 rg
/F1 5.80476 Tf
0 0 0 rg
104.4856 0 Td
<0145> Tj
1 1 1 rg
0 0 0 rg
3.62799 0.72565 Td
/F2 5.80476 Tf
(\040) Tj
1 1 1 rg
0.83137 0.81569 0.78431 RG
ET
51
С первым приложением HttpPayload был
HTTPPayloadLine: CWgC,ú&ÿ3@Î"ݯV¨®~×>×)\ªleÚl
µï½ci ¤Ãðð'È / CÈAø¯ª101 übA«1Ãÿ Åç«VɬZòYóóy7»ÇH.o²e<qZna3l±°¥þ6ñþ[2YÚ1ì³Eë-ÓÊÏ$y:tÎà![ËÅS¤¿É¡¢è,þ|ºs¨)@¢Qâ¯ÝF~}oµÒ>¦ OAxz³äÒ.ß9
æÃZ¤ùÒ¨*«øUή+4×
Это измерение было выполнено с помощью Microsoft Network Monitor
LAST UPDATE В конце концов, это была проблема с сервером после того, как они исправили успешную загрузку файлов