Не могу извлечь загруженный почтовый файл, используя java - PullRequest
0 голосов
/ 17 апреля 2020

Мне нужно скачать zip-файл с URL-адреса, сохранить его и извлечь его для получения данных.

Итак, у меня был метод для загрузки zip-файла с использованием Rest Template. Когда я загружаю данные и сохраняю файл в виде zip-файла, я могу извлечь zip-файл при щелчке правой кнопкой мыши и извлечь его, но не могу извлечь, используя java. я пробовал zip4j и java util zip, но оба они выдают исключение.

С zip4j я получаю: zip заголовки не найдены. вероятно, не zip-файл с ZipException.

Мой пример кода для загрузки и сохранения данных в формате zip:

    String body = gson.toJson(new Request());

    RequestCallback requestCallback = request -> {
        request.getHeaders().setContentType(MediaType.APPLICATION_JSON);
        request.getHeaders().setAccept(Arrays.asList(MediaType.APPLICATION_OCTET_STREAM, MediaType.ALL));
        request.getBody().write(body.getBytes());
    };

    ResponseExtractor<Void> responseExtractor = response -> {
        Path path = Paths.get(System.getProperty("user.home") + "/Desktop/LiableList/execute.zip");
        Files.copy(response.getBody(), path);
        return null;
    };

    template.execute(url, HttpMethod.POST, requestCallback, responseExtractor);

извлечение процесса с zip4j:

  ZipFile file = new ZipFile("C:/Users/ALTPRO/Desktop/LiableList/execute.zip");
  file.extractAll("C:/Users/ALTPRO/Desktop/LiableList");

Спасибо за ваши ответы.

...