Проверьте HTTP статус при загрузке файла - PullRequest
0 голосов
/ 28 июня 2019

У меня есть следующий код, который копирует содержимое (zip-архив) с URL-адреса в файл.

String url = // my https URL string
try {
    org.apache.commons.io.FileUtils.copyURLToFile(new URL(url), outputFile);
} catch (IOException ex) {
    throw new RuntimeException(ex);
}

Моя проблема не с загрузкой. После загрузки я извлекаю zip-файл, используя эту библиотеку. Иногда операция «распаковать» завершается неудачно и выдается следующая ошибка.

org.zeroturnaround.zip.ZipException: java.util.zip.ZipException: error in opening zip file
at org.zeroturnaround.zip.ZipExceptionUtil.rethrow(ZipExceptionUtil.java:11)
at org.zeroturnaround.zip.ZipUtil.unpackEntry(ZipUtil.java:276)
...

Я извлекаю только один файл из zip-архива. Код для распаковки ниже.

org.zeroturnaround.zip.ZipUtil.unpackEntry(myZipFile, filePath, targetFile);

Я думаю, что мне нужно проверить состояние HTTP перед загрузкой. Есть ли лучший способ решить это. Пожалуйста, помогите.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...