.net 解压缩 rar文件
public static class RARHelper { public static bool ExistsWinRar() { bool result = false; string key = @"SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\WinRAR.exe"; RegistryKey registryKey = Registry.LocalMachine.OpenSubKey(key); if (registryKey != null) { // result = registryKey.GetValue("").ToString(); result = true; } registryKey.Close(); return result; } // <summary> /// 将格式为rar的压缩文件解压到指定的目录 /// </summary> /// <param name="rarFileName">要解压rar文件的路径</param> /// <param name="saveDir">解压后要保存到的目录</param> public static void DeCompressRar(string sourceFilePath, string destinationPath) { try { string key = @"SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\WinRAR.exe"; RegistryKey registryKey = Registry.LocalMachine.OpenSubKey(key); var rarexe = registryKey.GetValue("").ToString(); registryKey.Close(); var shellArguments = string.Format("x -o+ \"{0}\" \"{1}\\\"", sourceFilePath, destinationPath); using (Process unrar = new Process()) { ProcessStartInfo startinfo = new ProcessStartInfo(); startinfo.FileName = rarexe; startinfo.Arguments = shellArguments; //设置命令参数 startinfo.WindowStyle = ProcessWindowStyle.Hidden; //隐藏 WinRAR 窗口 unrar.StartInfo = startinfo; unrar.Start(); unrar.WaitForExit();//等待解压完成 unrar.Close(); } } catch (System.Exception ex) { } } /// <summary> /// 将目录和文件压缩为rar格式并保存到指定的目录 /// </summary> /// <param name="soruceDir">要压缩的文件夹目录</param> /// <param name="rarFileName">压缩后的rar保存路径</param> public static void CompressRar(string soruceDir, string rarFileName) { try { string key = @"SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\WinRAR.exe"; RegistryKey registryKey = Registry.LocalMachine.OpenSubKey(key); var rarexe = registryKey.GetValue("").ToString(); registryKey.Close(); var shellArguments = string.Format("a -ep1 \"{0}\" \"{1}\" -r", rarFileName, soruceDir); using (Process unrar = new Process()) { ProcessStartInfo startinfo = new ProcessStartInfo(); startinfo.FileName = rarexe; startinfo.Arguments = shellArguments; //设置命令参数 startinfo.WindowStyle = ProcessWindowStyle.Hidden; //隐藏 WinRAR 窗口 unrar.StartInfo = startinfo; unrar.Start(); unrar.WaitForExit();//等待解压完成 unrar.Close(); } } catch (System.Exception ex) { } } }
.net 解压缩 rar文件的更多相关文章
- 让Ubuntu可以压缩/解压缩RAR文件
ubuntu刚安装的时候是不能解压rar文件的,只有在安装了解压工具之后,才可以解压. 安装:sudo apt-get install unrar卸载:sudo apt-get remove unra ...
- Ubuntu解压缩rar格式文件
解压缩rar文件时,出现问题 解决方法: sudo apt-get install unrar
- php实现rar文件的读取和解压
PHP Rar Archiving 模块 (php_rar) 是一个读取和解压rar文件的模块,但不提供RAR压缩(打包)的功能. 1.首先要到PECL的RAR页面下载DLL. 根据自己的情况选择下载 ...
- python利用unrar实现rar文件解压缩
python第三方包unrar可以实现rar文件的解压缩,它以动态库UnRAR为基础,封装而成 1. 下载UnRAR动态库 https://pypi.python.org/pypi/unrar/0.2 ...
- Java实现对zip和rar文件的解压缩
通过java实现对zip和rar文件的解压缩
- 如何解决rar文件解压缩失败
附件经常会是一系列的压缩文件,下载是默认文件名是一个随机数字.因而下载完会出现压缩文件解压缩失败解决方法:下载时重命名为带一定顺序的文件名,如文件1,文件2,文件3等 如何解决单个文件解压失败?论坛中 ...
- Python 解压缩Zip和Rar文件到指定目录
#__author__ = 'Joker'# -*- coding:utf-8 -*-import urllibimport osimport os.pathimport zipfilefrom zi ...
- 关于linux下rar文件的解压缩操作
在linux系统下.本身没有对rar文件操作的命令,如果需要对rar格式的文件操作,我们需要安装第三方的软件rar以及unrar. 1.linux下rar管理软件下载的官方地址为:http://www ...
- mac rar文件解压缩
在下载文件时经常遇到RAR格式的压缩文件, 之前从APP Store下载了免费的解压软件, 但是总觉着不好用, 广告信息很多. 好用的软件都要花钱, 所以找到了命令行解决的办法. 步骤如下: 首先需要 ...
随机推荐
- 【夯实shell基础】shell基础面面观
本文地址 点击关注微信公众号 wenyuqinghuai 分享提纲: 1. shell中的函数 2. shell中的数组 3. shell中的变量 4. shell中的运算符 5. Linux的一些命 ...
- Runnable和Callable之间的区别
Runnable和Callable之间的区别 1.Runnable任务执行后没有返回值:Callable任务执行后可以获得返回值 2.Runnable的方法是run(),没有返回值:Callable的 ...
- 进行Spark,Kafka针对Kerberos相关配置
1. 提交任务的命令 spark-submit \--class <classname> \--master yarn \--deploy-mode client \--executor- ...
- WPF的架构分析
首先,在这里我要说明的是:这里的例子,都是通过控制台程序来创建WPF应用,而非使用现成的WPF模版.因为WPF模版封装了创建WPF应用所需要的各种基本元素,并不利于我们学习. 创建一个WPF需要引用的 ...
- 使用 Flask-Cache 缓存给Flask提速
https://blog.csdn.net/u013205877/article/details/78013289
- 如何在本地编译Fabric Code
之前的博客都是拿官方现成的Docker镜像来用,但是并没有自己动手做镜像,也没有说到如何去开发和测试Fabric的代码.这一篇博客就从入门的角度讲解如何编译.测试和开发Fabric. 一.环境准备 要 ...
- 什么是Vagrant
相信大家对VMware和VirsualBox不会太陌生,虚拟化的好处在这里我就不多说了.那么我们就一起来学习用Vagrant 为自己来打造一个神奇的跨平台开发环境吧!! 开发过程中,我们经常碰到一个问 ...
- 论学好Linux系统的超级重要性
不知道各位在日常的工作生活中有没有接触过“rm -rf /*”这个命令,因为这个命令搞出来的事情可还不少呢!前段时间就在一个群里看到了有个小伙子,老板让他去维护一下服务器,这小伙也不太懂,就问群里的大 ...
- webstorm配置svn详解
1. 打开webstorm-> file -> setting -> plguins 输入svn如果没有SVNToolBox就在下面的列表中安装SVNToolBox插件即可. 2.c ...
- MTK刷机快捷键
彻底关机后按住音量下键,连接电脑 无法关机的情况下按住音量上+电源键,手机黑屏后松开电源键,连接电脑,出现进度条后松开音量上键