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 Files\WinRAR\WinRAR.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 Files\WinRAR\WinRAR.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();
}
}
}

C# 使用WinRar命令压缩和解压缩的更多相关文章

  1. Linux下的压缩和解压缩命令——gzip/gunzip

    gzip命令 gzip命令用来压缩文件.gzip是个使用广泛的压缩程序,文件经它压缩过后,其名称后面会多处".gz"扩展名. gzip是在Linux系统中经常使用的一个对文件进行压 ...

  2. Linux常用命令学习3---(文件的压缩和解压缩命令zip unzip tar、关机和重启命令shutdown reboot……)

    1.压缩和解压缩命令    常用压缩格式:.zip..gz..bz2..tar.gz..tar.bz2..rar .zip格式压缩和解压缩命令        zip 压缩文件名 源文件:压缩文件   ...

  3. Linux系列教程(八)——Linux常用命令之压缩和解压缩命令

    前面一篇博客我们讲解了Linux帮助和用户管理命令,对于帮助命令,man 命令能获得命令和配置文件的帮助信息,help命令能获得shell内置命令的帮助信息.我们可以通过which来区分什么是shel ...

  4. Linux常用命令之压缩和解压缩命令

    目录 1.压缩解压缩格式 .gz 一.将文件压缩为 .gz 格式,只能压缩文件:gzip 二.将 .gz 文件解压:gunzip 2.压缩解压缩格式 .tar.gz 一.将文件或目录压缩为 .tar. ...

  5. Linux下的压缩和解压缩命令gzip/gunzip

    作者:邓聪聪 Linux下的压缩和解压缩命令——gzip/gunzip yum -y install zip gzip (--安装压缩工具) gzip命令 gzip命令用来压缩文件.gzip是个使用广 ...

  6. 重识linux-常见压缩和解压缩命令

    重识linux-常见压缩和解压缩命令 1 compress 目前已经很少使用,知道有个  不重点学习 2 gzip和zcat 目前应用最广泛 gzip [-cdtv#] 文件名 zcat 文件名.gz ...

  7. Linux命令——压缩和解压缩

    Linux命令--压缩和解压缩 尽管文件后缀名在Linux中没什么用,但还是来看看: .gz:表示由gzip压缩工具压缩的文件 .bz2:表示由bzip2压缩工具压缩的文件 .tar:表示由tar打包 ...

  8. Ubuntu终端文件的压缩和解压缩命令

    在Ubntu的终端中压缩和解压缩是每天几乎要用到的命令,由于linux中各种压缩文件类型较多,所以需要记住几个主要的压缩和解压缩命令: 文件类型 执行动作 命令 .tar 解包 tar xvf Fil ...

  9. Linux文件压缩和解压缩命令

    Linux文件压缩和解压缩命令: tar 命令(打包并压缩的话,原文件也会默认存在) -c 建立打包档案 -x 解包 -t 查看包里的类容 -r 向包里追加文件 -v 显示打包过程 -f 文件 比如: ...

  10. Linux学习笔记(六)压缩和解压缩命令

    压缩和解压缩命令 zip unzip gzip gunzip bzip2 bunzip2 tar zip (.zip格式的压缩文件) 英文原意:package and compress (archiv ...

随机推荐

  1. 经常使用vi编辑命令

    进入 vi 该命令  vi filename :打开或新建文件.在第一行和第一光标  vi +n filename :打开文件,并将光标置于第 n 行首  vi + filename :打开文件,并将 ...

  2. SRM 219 Div II Level One: WaiterTipping,小心约分

    题目来源:http://community.topcoder.com/stat?c=problem_statement&pm=12609&rd=15503 这题目看上去so easy, ...

  3. hdu 4472 Count (2012 ACM-ICPC 成都现场赛)

    递推,考虑到一n可以由i * j + 1组合出来,即第二层有j个含有i个元素的子树...然后就可以了.. #include<algorithm> #include<iostream& ...

  4. pygame系列_draw游戏画图

    说到画图,pygame提供了一些很有用的方法进行draw画图. ''' pygame.draw.rect - draw a rectangle shape draw a rectangle shape ...

  5. 金色的 SQL注意事项(1)

    page(1-75) 最好是没有意义的主键字段,以方便未来的扩展. PS:主键,以后标书编码填错须要改的时候,关联表都须要跟着改.假设是一个无意义的自增字段是主键就无此原因. 主键最好不要设置为联合主 ...

  6. hdu1513 (滚动数据压缩空间)

    给定一个字符串,问最少添加多少个字符可以使得这个字符串变成回文串 if(str[i]==str[j]) dp[i][j] = dp[i+1][j-1] else dp[i][j] = min(dp[i ...

  7. Oracle Data Provider for .NET 的使用经验

    原文:Oracle Data Provider for .NET 的使用经验 Oracle Data Provider for .NET 是Oracle提供的基于Ado.net接口的一个开发包.    ...

  8. 安装好.net framework后运行慢

    表现 系统有时运行慢,尤其是.net程序运行得相当慢 mscorsvw.exe与mscorsvw.exe *32两个进程挂在任务管理器里时不时地占着CPU 解决 运行以下两条命令,加快这两进程的运行, ...

  9. Vs2012在Linux应用程序开发(3):加入新平台hi3516

    下面我们将VS2012添加一个新的平台支持,由于近来与哈斯hi3516.就选它吧! 1.1     复制平台文件 原来一直认为要让VS支持一个新的平台须要编写代码,某天在看MSBUILD文件夹的时候突 ...

  10. Android进程间通信(IPC)机制Binder简介和学习计划

    在Android系统,每个应用程序是由多个Activity和Service部件,这些Activity和Service有可能在相同的处理被执行,此外,还可以在不同的过程中进行. 然后.不是在同一个过程A ...