.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下载了免费的解压软件, 但是总觉着不好用, 广告信息很多. 好用的软件都要花钱, 所以找到了命令行解决的办法. 步骤如下: 首先需要 ...
随机推荐
- 运算符和Scanner的使用
一 1.运算符:对常量或者变量进行操作的符号 2.算术运算符: 1)四则运算:+ - * / 2)取模运算:%(只看余数) 3)字符串连接:任何数据类型和字符串连在一起,都是字符串结果(+来连接) 4 ...
- 开启远程桌面连接windows的方法以及遇到的问题
确认电脑的远程服务是否已经开启 开始--运行--输入“services.msc ”,打开服务,找到三个remote desktop开头的服务 Remote Desktop Configuration. ...
- 看到了必须要Mark啊,最全的编程中英文词汇对照汇总(里面有好几个版本的,每个版本从a到d的顺序排列)
java: 第一章: JDK(Java Development Kit) java开发工具包 JVM(Java Virtual Machine) java虚拟机 Javac 编译命令 java ...
- pytorch的函数中的group参数的作用
1.当设置group=1时: conv = nn.Conv2d(in_channels=, out_channels=, kernel_size=, groups=) conv.weight.data ...
- 关于:target与定位动画的奇怪现象
今天在制作首页导航图特效demo时,无意发现一个奇怪的交互现象,故记录 经测试,简化了触发该现象的代码,如下: <!DOCTYPE html> <html> <head& ...
- MySQL实现按天统计数据的方法
一.首先生成一个日期表,执行SQL如下: CREATE TABLE num (i int); ), (), (), (), (), (), (), (), (), (); CREATE TABLE i ...
- HSSFWorkbook 导出excel java
public String exportExcelList(){ //创建webbook,对应一个excel文件 HSSFWorkbook wb = new HSSFWorkbook(); //在we ...
- PyCharm中Django项目主urls导入应用中views的红线问题
PyCharm中Django项目主urls导入应用中views的红线问题 使用PyCharm学习Django框架,从项目的主urls中导入app中的views的时候,导入的包中下面有红线报错,但是却能 ...
- git常用命令值stash
git stash(git储藏)可用于以下情形: 发现有一个类是多余的,想删掉它又担心以后需要查看它的代码,想保存它但又不想增加一个脏的提交.这时就可以考虑git stash. 使用git的时候,我们 ...
- 360大牛:全面解读PHP面试
让大家了解基本面试流程和面试的核心要求以及意义是什么并理解PHP面试考点主要以基础为核心,说明PHP面试考察范围. 有需要联系:QQ:1844912514