Exemplo n.º 1
0
        private void CompressFolder(object sender, RoutedEventArgs e)
        {
            VistaFolderBrowserDialog FolderDialog = new VistaFolderBrowserDialog();

            if ((bool)FolderDialog.ShowDialog(this))
            {
                string[] files        = Directory.GetFiles(FolderDialog.SelectedPath);
                string   newDirectory = FolderDialog.SelectedPath + "-compressed";
                for (int i = 0; i < files.Length; i++)
                {
                    if (files[i].Contains(".png") || files[i].Contains(".jpg") || files[i].Contains(".bmp"))
                    {
                        Directory.CreateDirectory(newDirectory);
                        FileStream selectedFile = new FileStream(files[i], FileMode.Open, FileAccess.Read);
                        int        index        = files[i].LastIndexOf("\\");
                        string     fileName     = files[i].Substring(index);
                        CompressionImageFile.Compress(selectedFile, newDirectory + fileName, files[i]);
                    }
                    else if (files[i].Contains(".txt"))
                    {
                        string   content        = File.ReadAllText(files[i]);
                        TextFile compressedFile = CompressionTextFile.CompressTextFile(content);
                        var      fileInfo       = new FileInfo(files[i]);
                        string   fileName       = fileInfo.Name.Substring(0, fileInfo.Name Length - 4);
                        FileService.WriteFile(newDirectory, fileName, compressedFile.Content);
                    }
                }
                filePathlbl.Content = "file path : " + newDirectory;
            }
        }
Exemplo n.º 2
0
        private void DeCompressFolder(object sender, RoutedEventArgs e)
        {
            VistaFolderBrowserDialog FolderDialog = new VistaFolderBrowserDialog();

            if ((bool)FolderDialog.ShowDialog(this))
            {
                string[] files        = Directory.GetFiles(FolderDialog.SelectedPath);
                string   newDirectory = FolderDialog.SelectedPath.Substring(0, FolderDialog.SelectedPath.Length - 11) + "-decompressed";
                for (int i = 0; i < files.Length; i++)
                {
                    if (files[i].Contains(".lzw"))
                    {
                        Directory.CreateDirectory(newDirectory);
                        FileStream selectedFile = new FileStream(files[i], FileMode.Open, FileAccess.Read);
                        int        index        = files[i].LastIndexOf("\\");
                        string     fileName     = files[i].Substring(index);
                        CompressionImageFile.Decompress(selectedFile, newDirectory + fileName);
                    }
                    else if (files[i].Contains(".fano"))
                    {
                        byte[] content = File.ReadAllBytes(files[i]);
                        KeyValuePair <int, TextFile> decompressTextFile = CompressionTextFile.DecompressTextFile(content);
                        int    index    = files[i].LastIndexOf("\\");
                        string fileName = files[i].Substring(index, files[i].Length - index - 5);
                        string _content = Encoding.UTF8.GetString(decompressTextFile.Value.Content, 0, decompressTextFile.Value.Content.Length);

                        File.WriteAllText(newDirectory + fileName + ".txt", _content);
                    }
                }
                filePathlbl.Content = "file path : " + newDirectory;
            }
        }
Exemplo n.º 3
0
        private void CompressTextFile(object sender, RoutedEventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();

            openFileDialog.Multiselect      = true;
            openFileDialog.Filter           = "Text files (*.txt)|*.txt";
            openFileDialog.InitialDirectory = @"C:\Users\hp\Desktop";
            if (openFileDialog.ShowDialog() == true)
            {
                var fileInfo = new FileInfo(openFileDialog.FileName);
                sizeBefore.Content = fileInfo.Length + " Byte";
                string content = File.ReadAllText(openFileDialog.FileName);
                textBox.Text = content;
                TextFile compressedFile = CompressionTextFile.CompressTextFile(content);
                sizeAfter.Content = compressedFile.Size + " Byte";
                string directoryName = fileInfo.DirectoryName.ToString();
                string fileName      = fileInfo.Name.Substring(0, fileInfo.Name.Length - 4);
                filePathlbl.Content      = "file path : " + FileService.WriteFile(directoryName, fileName, compressedFile.Content);
                textBox.Visibility       = Visibility.Visible;
                imageSelected.Visibility = Visibility.Hidden;
            }
        }
Exemplo n.º 4
0
        private void DecompressTextFile(object sender, RoutedEventArgs e)
        {
            OpenFileDialog openFileDialog = new OpenFileDialog();

            openFileDialog.Filter           = "Text files (*.fano)|*.fano";
            openFileDialog.InitialDirectory = @"C:\Users\hp\Desktop";
            if (openFileDialog.ShowDialog() == true)
            {
                byte[] content = File.ReadAllBytes(openFileDialog.FileName);
                KeyValuePair <int, TextFile> decompressTextFile = CompressionTextFile.DecompressTextFile(content);
                TextFile compressedFile = decompressTextFile.Value;
                sizeBefore.Content = compressedFile.Size + " Byte";
                string _content = Encoding.UTF8.GetString(compressedFile.Content, 0, compressedFile.Content.Length);
                textBox.Text = _content;
                File.WriteAllText(openFileDialog.FileName.Substring(0, openFileDialog.FileName.Length - 15) + ".txt", _content);
                sizeAfter.Content = decompressTextFile.Key + " Byte";

                filePathlbl.Content      = "file path : " + openFileDialog.FileName.Substring(0, openFileDialog.FileName.Length - 15) + ".txt";
                textBox.Visibility       = Visibility.Visible;
                imageSelected.Visibility = Visibility.Hidden;
            }
        }