zoukankan      html  css  js  c++  java
  • C# 使用WinRar命令压缩和解压缩

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.WebControls;
    
    using System.Diagnostics;
    using System.IO;
    
    public partial class Zip : System.Web.UI.Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {
    
        }
    
        //压缩文件
        protected void Button1_Click(object sender, EventArgs e)
        {
            ProcessStartInfo startinfo = new ProcessStartInfo(); ;
            Process process = new Process();
            string rarName = "1.rar"; //压缩后文件名
            string path = @"C:images"; //待压缩打包文件夹
            string rarPath = @"C:zip";  //压缩后存放文件夹
            string rarexe = @"c:Program FilesWinRARWinRAR.exe";  //WinRAR安装位置
    
            try
            {
                //压缩命令,相当于在要压缩的文件夹(path)上点右键->WinRAR->添加到压缩文件->输入压缩文件名(rarName)
                string cmd = string.Format("a {0} {1} -r",
                                    rarName,
                                    path);
                startinfo.FileName = rarexe;
                startinfo.Arguments = cmd;                          //设置命令参数
                startinfo.WindowStyle = ProcessWindowStyle.Hidden;  //隐藏 WinRAR 窗口
    
                startinfo.WorkingDirectory = rarPath;
                process.StartInfo = startinfo;
                process.Start();
                process.WaitForExit(); //无限期等待进程 winrar.exe 退出
                if (process.HasExited)
                {
                    MSCL.JsHelper.Alert("压缩成功!", Page);
                }
            }
            catch (Exception ex)
            {
                MSCL.JsHelper.Alert(ex.Message, Page);
            }
            finally
            {
                process.Dispose();
                process.Close();
            }        
        }
    
        //解压文件
        protected void Button2_Click(object sender, EventArgs e)
        {
            ProcessStartInfo startinfo = new ProcessStartInfo(); ;
            Process process = new Process();
            string rarName = "1.rar"; //将要解压缩的 .rar 文件名(包括后缀)
            string path = @"C:images1"; //文件解压路径(绝对)
            string rarPath = @"C:zip";  //将要解压缩的 .rar 文件的存放目录(绝对路径)
            string rarexe = @"c:Program FilesWinRARWinRAR.exe";  //WinRAR安装位置
    
            try
            {
                //解压缩命令,相当于在要压缩文件(rarName)上点右键->WinRAR->解压到当前文件夹
                string cmd = string.Format("x {0} {1} -y",
                                    rarName,
                                    path);
                startinfo.FileName = rarexe;
                startinfo.Arguments = cmd;                          //设置命令参数
                startinfo.WindowStyle = ProcessWindowStyle.Hidden;  //隐藏 WinRAR 窗口
    
                startinfo.WorkingDirectory = rarPath;
                process.StartInfo = startinfo;
                process.Start();
                process.WaitForExit(); //无限期等待进程 winrar.exe 退出
                if (process.HasExited)
                {
                    MSCL.JsHelper.Alert("解压缩成功!", Page);
                }
            }
            catch (Exception ex)
            {
                MSCL.JsHelper.Alert(ex.Message, Page);
            }
            finally
            {
                process.Dispose();
                process.Close();
            }   
        }
    }



  • 相关阅读:
    JS判断鼠标移入元素的方向
    EJB开发第一个无状态会话bean、开发EJBclient
    Android摇一摇振动效果Demo
    吃饭与团队惬意
    Factorization Machines 学习笔记(三)回归和分类
    代理---视图间数据的传递:标签显示输入的内容【多个视图中】
    cocos2d-x v3.2 FlappyBird 各个类对象详细代码分析(7)
    金典 SQL笔记(4)
    用GDB调试多进程程序
    C程序设计的抽象思维-算法分析-大多数元素
  • 原文地址:https://www.cnblogs.com/smartsmile/p/6234118.html
Copyright © 2011-2022 走看看