Filtrar arquivos que serão descompactados em um ZIP

3 respostas
R

Oi Pessoal, tenho uma aplicação que faz upload de um .zip e descompacta todos os arquivos em uma pasta pre definida. O que eu estou procurando é uma maneira de escolher os arquivos que serão descompactados pelo content_type deles, ou seja, quero verificar no cabeçalho dos arquivos que tipo eles são. Isso por que não gostaria de apenas verificar a extensão.

Eu faço mais ou menos assim:

ZipInputStream zis = new ZipInputStream(new BufferedInputStream(checksum));

ZipEntry entry;

Eu Intero o zis e recebo um ZipEntry para cada arquivo de dentro do zip, mas esse objeto ZipEntry não possui nenhum méthodo que me retorne oque eu estou querendo.

Alguma dica de como fazer?

Agradeço desde já, abraços

3 Respostas

KWill

Arquivos de dados em geral são apenas uma sequência de bytes e para a partir dessa sequência saber qual o formato/tipo de conteúdo seria necessário usar algum analisador de tipos MIME ou alguma ferramenta similar e é claro que tu vai ter que descompactar o arquivo para saber de que formato ele é se tu quiser usar algum analisador de formato de arquivo.

Inté.

M

Tratando-se de formato de arquivo, há alguma diferença essencial entre um JAR e um ZIP? Pois com JAR é possível solucionar o problema.

M

Ahh… e se você for procurar o conteúdo do arquivo pode usar os “magic numbers”. Uma lista deles: http://www.garykessler.net/library/file_sigs.html

Criado 18 de janeiro de 2010
Ultima resposta 19 de jan. de 2010
Respostas 3
Participantes 3