文件压缩解压和调用系统里安装的软件
2013-11-22 10:32
369 查看
本文的压缩和解压都是调用系统自带的WinRAR解压缩软件来实现的,实例代码如下:
public partial class test2 : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { //YS();//压缩 //JY();//解压 GetSoft();//调用软件 } // 参数说明: // a 添加文件到压缩文件中 // -k 锁定压缩文件 // -s产生固体存档,这样可以增大压缩比 // -r包括子目录 // -m1 设置压缩比 // -m0 存储 添加到压缩文件时不压缩文件。 // -m1 最快 使用最快方式(低压缩) // -m2 较快 使用快速压缩方式 // -m3 标准 使用标准(默认)压缩方式 // -m4 较好 使用较好压缩方式(较好压缩,但是慢) // -m5 最好 使用最大压缩方式(最好的压缩,但是最慢) /// <summary> /// 压缩文件 /// </summary> public void YS() { string rar; RegistryKey reg; string args; ProcessStartInfo procStart; Process process; try { reg = Registry.ClassesRoot.OpenSubKey(@"Applications\WinRAR.exe\Shell\Open\Command"); rar = reg.GetValue("").ToString();//获取注册表rar安装路径 reg.Close(); rar = rar.Substring(1, rar.Length - 7);//获取rar安装路径 //args = "a -inul -y E:\\压缩1.rar E:\\Test E:\\Samples E:\\Logo1.png E:\\set.config D:\\PATH";//文件压缩大小为6145KB //args = "a -m1 -inul -y E:\\压缩1.rar E:\\Test E:\\Samples E:\\Logo1.png E:\\set.config D:\\PATH";//文件压缩大小为6908KB //args = "a -m2 -inul -y E:\\压缩2.rar E:\\Test E:\\Samples E:\\Logo1.png E:\\set.config D:\\PATH";//文件压缩大小为6522KB //args = "a -m3 -inul -y E:\\压缩3.rar E:\\Test E:\\Samples E:\\Logo1.png E:\\set.config D:\\PATH";//文件压缩大小为6145KB //args = "a -m4 -inul -y E:\\压缩4.rar E:\\Test E:\\Samples E:\\Logo1.png E:\\set.config D:\\PATH";//文件压缩大小为6123KB args = "a -m5 -inul E:\\压缩5.rar E:\\Test E:\\Samples E:\\Logo1.png E:\\set.config D:\\PATH";//文件压缩大小为6117KB,这里为rar的压缩命令格式(也可以自行扩展),第一个是压缩后的文件,后面几个路径是需要被压缩的文件和文件夹 procStart = new ProcessStartInfo(); procStart.FileName = rar; procStart.Arguments = args;//参数 procStart.WindowStyle = ProcessWindowStyle.Hidden;//窗口状态,默认会显示压缩状态 procStart.WorkingDirectory = Server.MapPath(""); ;//获取或设置要启动的进程的初始目录。 process = new Process(); process.StartInfo = procStart; process.Start(); Response.Write("<script>alert('压缩成功')</script>"); } catch (Exception ex) { Response.Write(ex.ToString()); } } /// <summary> /// 解压 /// </summary> public void JY() { string rar; RegistryKey reg; string args; ProcessStartInfo startInfo; Process process; try { reg = Registry.ClassesRoot.OpenSubKey(@"Applications\WinRar.exe\Shell\Open\Command"); rar = reg.GetValue("").ToString(); reg.Close(); rar = rar.Substring(1, rar.Length - 7); args = " X E:\\压缩.rar E:\\Test2";//第一个路径是需要被解压的文件,第二个路径必须存在才能解压到该路径 startInfo = new ProcessStartInfo(); startInfo.FileName = rar; startInfo.Arguments = args; startInfo.WindowStyle = ProcessWindowStyle.Hidden; process = new Process(); process.StartInfo = startInfo;//启用新的进程 process.Start(); Response.Write("<script>alert('解压成功')</script>"); } catch (Exception ex) { Response.Write(ex.ToString()); } } /// <summary> /// 调用软件,示例:调用QQ播放器 /// </summary> public void GetSoft() { RegistryKey reg; string ps; try { reg = Registry.ClassesRoot.OpenSubKey(@"Applications\QQPlayer.exe\shell\open\command"); ps = reg.GetValue("").ToString(); reg.Close(); ps = ps.Substring(1, ps.Length - 10); ProcessStartInfo psPro = new ProcessStartInfo(); psPro.FileName = ps; Process process = new Process(); process.StartInfo = psPro; process.Start(); Response.Write("<script>alert('调用QQ播放器成功!')</script>"); } catch (Exception ex) { Response.Write(ex.Message); } } }
相关文章推荐
- c#调用WinRAR软件压缩和解压文件
- 调用Android系统安装的软件打开文件,程序停止运行
- 调用Android系统安装的软件打开文件,程序停止运行
- Qt调用quazip来解压和压缩文件
- AIX系统上压缩与解压文件
- vba通过函数调用Winrar压缩软件压缩文件
- Linux下常用软件安装(tar bz gz等压缩包的压缩和解压)
- 教你一招:解决Win 10安装软件时提示:文件系统错误 (-1073740940)
- linux系统下如何解压RAR文件软件rarforlinux
- [转]Ubuntu Linux 安装 .7z 解压和压缩文件
- 调用系统安装软件时出现“解析软件包时出现问题”
- S5P4418与S5P6618的Android boot.img的解压与压缩, Sparse ext4文件系统
- 如何把软件安装到安卓系统文件里,就是/system/app里面
- Ubuntu Linux 安装 .7z 解压和压缩文件
- 4、软件包rpm、yum、group、压缩解压、源码安装
- 利用VC调用WinRAR解压和压缩文件
- Android中调用系统所装的软件打开文件
- Java 中调用 Apache API 实现图片文件的 压缩 与 解压 实例
- 指令篇:文件与文件系统的压缩与解压与打包(归档)与解压___gzip、zcat;bzip2、bzcat;zip; tar
- Asp.net调用RAR压缩文件与解压文件源码