Проверьте, равен ли файл в Gzip Xml in JAVA? - PullRequest
1 голос
/ 03 февраля 2020

Как проверить java, является ли файл в архиве GZip файлом XML? Потому что я пробую это, но получил ошибки:

java .lang.NullPointerException в орг. apache .tika.io.TikaInputStream.get (TikaInputStream. java: 265)

public static boolean presenceFichierXmlDansArchiveGzip (final File fichier)  {

    try (final FileInputStream fis = new FileInputStream(fichier);
         final GzipCompressorInputStream gzIn = new GzipCompressorInputStream(fis);
         final TarArchiveInputStream tais = new TarArchiveInputStream(gzIn)) {
        for (TarArchiveEntry tae = tais.getNextTarEntry(); tae != null; tae = tais.getNextTarEntry()) {
            if (tae.isFile()) {
                Tika tika = new Tika();
                String contentType = tika.detect(tae.getFile());
                System.out.println("contentType : "+ contentType + ",Name :"+tae.getName());
                if (!StringUtils.containsIgnoreCase(contentType, FICHIER_XML)) {
                    return false;
                }
            }

            }

        }
    catch (IOException e){
        LOGGER.error("Erreur lors de l'appel de la fonction presenceFichierXmlDansArchiveGzip " + e);
    }


    return true;
}
...