Exemple #1
0
        private void OpenZipFile(string zipFilePath)
        {
            this.zipFilePath = zipFilePath;
            int  fileCnt   = 0;
            long totalByte = 0;

            string  ext     = Path.GetExtension(zipFilePath).ToLower();
            ZipData zipData = null;

            if (ext == ".sip")
            {
                zipData = ShimZip.GetZipData(this.zipFilePath, ref fileCnt, ref totalByte);
            }
            else if (ext == ".pak")
            {
                zipData = QuakePak.GetZipData(this.zipFilePath, ref fileCnt, ref totalByte);
            }

            string zipFileName = Path.GetFileName(zipFilePath);

            this.ZipToTree(zipData, Path.GetFileName(zipFilePath));
        }
Exemple #2
0
        // == event handler
        private void zipToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (this.dlgFolder.ShowDialog(this) != DialogResult.OK)
            {
                return;
            }
            string dir = this.dlgFolder.SelectedPath;

            this.dlgSave.InitialDirectory = Path.GetDirectoryName(dir);
            this.dlgSave.FileName         = Path.GetFileName(dir) + ".sip";
            if (this.dlgSave.ShowDialog(this) != DialogResult.OK)
            {
                return;
            }
            string zipFilePath = this.dlgSave.FileName;

            var files = Directory.GetFiles(dir);
            var dirs  = Directory.GetDirectories(dir);

            var  t1        = DateTime.Now;
            int  fileCnt   = 0;
            long totalByte = 0;
            var  zipData   = ZipData.MakeZipData(files, dirs, ref fileCnt, ref totalByte);

            int encFileCnt = 0;

            if (Path.GetExtension(zipFilePath).ToLower() == ".sip")
            {
                encFileCnt = ShimZip.ZipFile(zipData, zipFilePath);
            }
            else
            {
            }
            var dt = DateTime.Now - t1;

            MessageBox.Show($"{encFileCnt} files ziped to {zipFilePath}.\r\nelapse time : {dt.TotalSeconds:0.0}s");
        }