Estoy usando SharpZipLib en un proyecto y me pregunto si es posible usarlo para mirar dentro de un archivo zip, y si uno de los archivos dentro tiene datos modificados en un rango Estoy buscando para luego recoger ese archivo y copiarlo a un nuevo directorio? ¿Alguien sabe si esto es posible?SharpZipLib Examinar y seleccionar el contenido de un archivo ZIP
6
A
Respuesta
8
Sí, es posible enumerar los archivos de un archivo zip con SharpZipLib. También puede seleccionar archivos del archivo zip y copiarlos a un directorio en su disco.
Aquí es un pequeño ejemplo:
using (var fs = new FileStream(@"c:\temp\test.zip", FileMode.Open, FileAccess.Read))
{
using (var zf = new ZipFile(fs))
{
foreach (ZipEntry ze in zf)
{
if (ze.IsDirectory)
continue;
Console.Out.WriteLine(ze.Name);
using (Stream s = zf.GetInputStream(ze))
{
byte[] buf = new byte[4096];
// Analyze file in memory using MemoryStream.
using (MemoryStream ms = new MemoryStream())
{
StreamUtils.Copy(s, ms, buf);
}
// Uncomment the following lines to store the file
// on disk.
/*using (FileStream fs = File.Create(@"c:\temp\uncompress_" + ze.Name))
{
StreamUtils.Copy(s, fs, buf);
}*/
}
}
}
}
En el ejemplo anterior utilizo un MemoryStream
para almacenar el ZipEntry
en la memoria (para el análisis adicional). También puede almacenar el ZipEntry
(si cumple con ciertos criterios) en el disco.
Espero, esto ayuda.
+0
Esto es exactamente lo que estaba buscando, muy apreciado !! – DukeOfMarmalade
Cuestiones relacionadas
- 1. Creando archivo Zip usando SharpZipLib
- 2. C# con SharpZipLib - ¿Compatibilidad de SharpZipLib con Winzip y XP?
- 3. contenido dentro del archivo zip
- 4. SharpZipLib crear un archivo con una cadena en la memoria y descargarlo como un archivo adjunto
- 5. ¿Cómo puedo examinar el contenido de una sección de datos de un archivo ELF en Linux?
- 6. En PHP, ¿es posible inspeccionar el contenido de un archivo Zip sin extraer primero su contenido?
- 7. Usando System.IO.Packaging para generar un archivo ZIP
- 8. C# sharpziplib agregar archivo al archivo existente
- 9. Ocultar el botón Examinar en un tipo de entrada = archivo
- 10. Lea un archivo zip dentro del archivo zip
- 11. archivo Descomprimir ZIP y extraer el contenido del nombre de la carpeta desconocida
- 12. SharpZipLib: La compresión de un único archivo en un único archivo comprimido
- 13. ¿Utiliza SharpZipLib para descomprimir archivos específicos?
- 14. java.util.zip.ZipException: error al abrir el archivo zip
- 15. Leer un archivo zip y escribirlo en otro archivo python
- 16. crear carpeta para archivo zip y extraerla
- 17. Si tengo el contenido de un archivo zip en una cadena de Python, ¿puedo descomprimirlo sin escribirlo en un archivo?
- 18. ¿Cómo encriptar un archivo .zip?
- 19. Transmisión de un archivo comprimido a través de http en .net con SharpZipLib
- 20. Python: Cómo descargar un archivo zip
- 21. ¿Cómo puedo extraer un solo archivo de un archivo ZIP utilizando Perl's Archive :: Zip?
- 22. Leyendo un archivo zip dentro de un archivo jar
- 23. Incluir todo el contenido de un archivo y repetirlo
- 24. Crear archivo Zip desde múltiples archivos de memoria en C#
- 25. Obteniendo una excepción "No se puede leer como archivo zip" al intentar obtener una transmisión de un archivo Zip interno (un Zip dentro de otro Zip)
- 26. Descargar y extraer archivo Zip en Android
- 27. Creando un archivo Zip desde la secuencia y descargándolo
- 28. ¿cómo examinar el archivo C++ .o bajo Linux?
- 29. ¿Cómo crear y llenar un archivo ZIP utilizando ASP.NET?
- 30. Crear un archivo zip utilizando PHP clase ZipArchive sin escribir el archivo en el disco?
Estoy seguro de que es posible. Tendría que abrir el archivo y mirar el contenido de la colección de archivos. Dependiendo de si la última información de modificación se hace pública, determinará si podrá hacer todo lo demás. No hago la razón por la que no se hará público, la biblioteca en la que SharpZibLib se basa permite eso, por lo que también debería permitirlo. De lo contrario, siempre hay otras soluciones que lo permitan. –