public void CompresionLZW(IFormFile archivo, string nombre) { ClassLZW.Comprimir(archivo, nombre); var newFile = new FileInfo(Path.Combine(Environment.CurrentDirectory, "compress", $"{nombre}.lzw")); Archivo.ManejarCompressions( new Archivo { Algoritmo = "LZW", NombreOriginal = archivo.FileName, Nombre = $"{nombre}.lzw", RutaArchivo = Path.Combine(Environment.CurrentDirectory, "compress", $"{nombre}.lzw"), RazonCompresion = (double)newFile.Length / (double)archivo.Length, FactorCompresion = (double)archivo.Length / (double)newFile.Length, Porcentaje = 100 - (((double)newFile.Length / (double)archivo.Length) * 100) }); }
public void DesompresionLZW(IFormFile archivo) { var Archivos = Archivo.CargarHistorial(); var Original = Archivos.Find(c => Path.GetFileNameWithoutExtension(c.Nombre) == Path.GetFileNameWithoutExtension(archivo.FileName)); var path = ClassLZW.Descomprimir(archivo, Original.NombreOriginal); var newFile = new FileInfo(path); Archivo.ManejarCompressions( new Archivo { Algoritmo = "LZW", NombreOriginal = Original.NombreOriginal, Nombre = archivo.FileName, RutaArchivo = path, RazonCompresion = 0, FactorCompresion = 0, Porcentaje = 0 }); }