C#调用Rar文件及获取Rar返回值的方法

 更新时间:2015年07月25日 09:36:14   作者:汪宪博  
这篇文章主要介绍了C#调用Rar文件及获取Rar返回值的方法,实例分析了C#调用rar文件实现文件的压缩与解压相关技巧,具有一定参考借鉴价值,需要的朋友可以参考下

本文实例讲述了C#调用Rar文件及获取Rar返回值的方法。分享给大家供大家参考。具体如下:

该程序适用于C#调用。
所需的Rar.exe可从WinRar官网下载控制台版。

按钮OK点击事件:

System.Diagnostics.Process process;
private void btnRAR_Click(object sender, EventArgs e)
{
 if (System.IO.File.Exists("Rar.exe"))
 {
  try
  {
   process = new System.Diagnostics.Process();
   process.StartInfo.FileName = "Rar.exe";
   process.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Minimized;
   process.EnableRaisingEvents = true;
   //m<0..5>  设置压缩级别(0-存储...3-默认...5-最大)
   //rar a -m5 -ag[yyyy年mm月dd日_hh点mm分-ss] MyLuoLuo
   process.StartInfo.Arguments = string.Format(@"a -m{0} -ag[yyyy年mm月dd日_hh点mm分-ss] {1}\\MyLuoLuo.rar {2}", this.SaveRank.ToString(),this.FileName,this.RarPath); //@"a -m5 -ag[yyyy年mm月dd日_hh点mm分-ss] MyLuoLuo.rar D:\Txt";
   process.Exited += new EventHandler(RarStop);
   process.Start();
  }
  catch (Exception ex)
  {
   MessageBox.ShowError("发生错误!错误信息:\n" + ex.Message);
  }
 }
}

进程退出时判断返回值:

private void RarStop(object sender, System.EventArgs e)
{
 switch (process.ExitCode)
 {
  case 0:
   MessageBox.ShowInformation("压缩成功!");
   break;
  case 1:
   MessageBox.ShowInformation("有错误但没有发生致命错误!");
   break;
  case 2:
   MessageBox.ShowError("发生一个致命错误!");
   break;
  case 3:
   MessageBox.ShowError("解压缩时发生一个 CRC 错误!");
   break;
  case 4:
   MessageBox.ShowError("试图修改先前使用 'k' 命令锁定的压缩文件!");
   break;
  case 5:
   MessageBox.ShowError("写入磁盘错误!");
   break;
  case 6:
   MessageBox.ShowError("打开文件错误!");
   break;
  case 7:
   MessageBox.ShowError("命令行选项错误!");
   break;
  case 8:
   MessageBox.ShowError("没有足够的内存进行操作!");
   break;
  case 9:
   MessageBox.ShowError("创建文件错误!");
   break;
  case 255:
   MessageBox.ShowError("用户中断操作");
   break;
  default:
   MessageBox.ShowError("未知错误!");
   break;
 }
}

希望本文所述对大家的C#程序设计有所帮助。

相关文章

  • C#简单聊天室雏形

    C#简单聊天室雏形

    这篇文章主要为大家详细介绍了C#简单聊天室雏形,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02
  • C#中计算时间差中的小数问题解决

    C#中计算时间差中的小数问题解决

    C#中计算时间差中的小数问题解决需要的朋友可以参考一下
    2013-03-03
  • C#实现简单屏幕监控的方法

    C#实现简单屏幕监控的方法

    这篇文章主要介绍了C#实现简单屏幕监控的方法,涉及C#的图标隐藏及屏幕截图等技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-04-04
  • C#编程中常见数据结构的比较(Unity3D游戏开发)

    C#编程中常见数据结构的比较(Unity3D游戏开发)

    在本篇内容里我们给大家整理了关于Unity3D游戏开发中C#编程中常见数据结构的比较相关知识点内容,需要的朋友们参考下。
    2019-05-05
  • C#操作INI文件的方法详解

    C#操作INI文件的方法详解

    INI文件全称是Initialization File的缩写,即初始化文件,是windows系统的系统配置文件所采用的存储格式,统管windows的各项配置。本文介绍了C#操作INI文件的方法,需要的可以参考一下
    2022-10-10
  • C#通过反射创建自定义泛型

    C#通过反射创建自定义泛型

    这篇文章主要介绍了C#通过反射创建自定义泛型的方法,需要的朋友可以参考下
    2014-08-08
  • C# WPF调用QT窗口的方法

    C# WPF调用QT窗口的方法

    本文主要介绍了C# WPF调用QT窗口的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-02-02
  • C#交错数组知识点分析

    C#交错数组知识点分析

    在本篇文章里小编给大家整理的是关于C#交错数组知识点分析,需要的朋友们参考下。
    2019-11-11
  • C#如何自动识别文件的编码

    C#如何自动识别文件的编码

    相信每位程序员在日常学习工作中,文件编码识别是必不可少的,一旦编码错误就会出现让人头疼的乱码,那么下面这篇文章将给大家介绍如何通过C#来自动识别文件的编码。文中给出了详细的示例代码,对大家的理解很有帮助,下面跟着小编一起来学习学习吧。
    2016-12-12
  • c#实现选择排序的示例

    c#实现选择排序的示例

    这篇文章主要介绍了c#实现选择排序的示例,帮助大家更好的理解和使用排序算法,感兴趣的朋友可以了解下
    2020-10-10

最新评论