Exemple #1
0
        public void Post([FromForm(Name = "file")] IFormFile file, string name, string method)
        {
            //lectura del archivo
            var result = new StringBuilder();

            using (var reader = new StreamReader(file.OpenReadStream()))
            {
                while (reader.Peek() >= 0)
                {
                    result.AppendLine(reader.ReadLine());
                }
            }
            byte[] textInBytes = Encoding.ASCII.GetBytes(result.ToString());

            //ejecuta según el método de compresión escogido
            if (method.ToLower().Equals("huffman"))
            {
                Huffman compressMethods = new Huffman();
                compressMethods.BuildHuffman(textInBytes, name);
                compressMethods.WriteFile(textInBytes, name, file.FileName);
            }
            else if (method.ToLower().Equals("lzw"))
            {
                LZW compressMethods = new LZW();
                //compressMethods.GetText(result);
                //compressMethods.InitializeDictionary(name);
                compressMethods.InitializeDictionary(textInBytes, name);
                //compressMethods.Compress(textInBytes, name, file.FileName);
                compressMethods.BuildLZW(textInBytes, name, file.FileName);
            }
        }