C#使用WinRar命令进行压缩和解压缩操作的实现方法
程序员文章站
2023-11-21 23:17:40
本文实例讲述了c#使用winrar命令进行压缩和解压缩操作的实现方法。分享给大家供大家参考,具体如下:
using system;
using system.c...
本文实例讲述了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 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#相关内容感兴趣的读者可查看本站专题:《c#常见控件用法教程》、《winform控件用法总结》、《c#数据结构与算法教程》、《c#面向对象程序设计入门教程》及《c#程序设计之线程使用技巧总结》
希望本文所述对大家c#程序设计有所帮助。