Ler arquivo txt Compactado
13/06/2012
0
Estou com um problema e peço uma ajuda.
Preciso fazer a leitura de um arquivo txt, o problema é que ele é baixado da internet em tempo de execução, e vem compactado no formato WAN.
Junto com este arquivo que quero ler, existem varios outros.
Pergunto a voces se tem como eu descompactar somente o arquivo que quero,e fazer a leitura somente dele?
Agradeço...
Aproveitando pergunto a voces se nao conhecem algum algoritmo que descubra o sexo da pessoa apartir do nome.
Carlos Andre
Posts
13/06/2012
Paulo Gonçalves
Este arquivo é muito grande? Você consegue postar uma parte dele?
13/06/2012
Carlos Andre
Nao sei te dizer se os arquivos sao do tipo Connect Direct ou outro.
Esse arquivo .WAN eu pego da CVM Comissão de Valores Mobiliários, e nele tem os arquivos .txt que preciso para usar no codigo...
Outra coisa, eu consigo abri-lo no winrar.
Mandei o arquivo WAN para seu email(ledcrash@gmail.com), para ver se pode me ajudar...
Desde ja agradeço!
13/06/2012
Paulo Gonçalves
Só de saber que é um arquivo da CVM (e governo felizmente deixa alguma documentação na net) talvez consiga alguma coisa pra voce.
13/06/2012
Paulo Gonçalves
Referencie a DLL Ionic.BZip2.dll no seu projeto. Renomeie programaticamente o arquivo WAN para ZIP (apesar de que eu acho que se você colocar o nome do arquivo sem modificações a DLL não vai deixar de abrir o arquivo. De qualquer forma, vale o teste que eu não fiz.
De qualquer forma, use o código abaixo para ler o arquivo e interar entre todos os arquivos contidos nele. No IF dentro do foreach, verifique o nome do arquivo e extraia somente ele. Mude a variável TargetDirectory para o caminho onde deseja extrair o arquivo.
using (ZipFile zip = ZipFile.Read(ExistingZipFile.zip)) { foreach (ZipEntry e in zip) { if(e.FileName.Equals(nomeDoArquivo) e.Extract(TargetDirectory, true); // true => overwrite existing files } }
Se não for isto, por favor, especifique melhor sua dúvida / problema.
14/06/2012
Carlos Andre
Clique aqui para fazer login e interagir na Comunidade :)