public bool ZipExtraer(string archivo, string directorioDestino) { Dialogo dlg = new Dialogo(); if (archivo?.Length == 0) { archivo = dlg.DlgSeleccionarArchivo("Seleccione archivo"); } else if (!File.Exists(archivo)) { return(false); } if (directorioDestino?.Length == 0) { directorioDestino = dlg.DlgSeleccionarDirectorio(); } if (Directory.Exists(directorioDestino) && File.Exists(archivo)) { ZipFile.ExtractToDirectory(archivo, directorioDestino); return(true); } else { return(false); } }
public List <string> ZipLeerArchivo(string archivoZip = "none") { Dialogo dlg = new Dialogo(); List <string> archivos = new List <string>(); ZipArchive zip; if (archivoZip != "none" && File.Exists(archivoZip)) { zip = ZipFile.OpenRead(archivoZip); } else if (archivoZip != "none" && !File.Exists(archivoZip)) { return(null); } else { archivoZip = dlg.DlgSeleccionarArchivo("Seleccione un archivo"); if (archivoZip?.Length == 0) { return(null); } else { zip = ZipFile.OpenRead(archivoZip); } } foreach (ZipArchiveEntry entry in zip.Entries) { archivos.Add(entry.FullName); } return(archivos); }