程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> 關於C# >> 用C#實現RAR文件的自動解壓縮

用C#實現RAR文件的自動解壓縮

編輯:關於C#

如果我們用的是托管服務器通常需要實現文件上傳下載功能(替代FTP功能進行遠程文件管理)已提高文件處理的效率下面的程序代碼實現了對文件的自動解壓處理

/// <summary>
 /// 解壓縮指定的rar文件。
 /// </summary>
 /// <param name="rarFileToDecompress">rar文件(絕對路徑)。</param>
 /// <param name="directoryToSave">解壓縮保存的目錄。</param>
 /// <param name="deleteRarFile">解壓縮後刪除rar文件。</param>
 public void DecompressRAR(string rarFileToDecompress, string directoryToSave, bool deleteRarFile)
 {
 string winrarExe = Server.MapPath(@"../EnterpriseCustom/WinRaR.exe");//需要在指定路徑下放入winara.exe的可執行文件在安裝目錄下可以找到這個文件
 if(new FileInfo(winrarExe).Exists)
 {
  directoryToSave = CheckDirectoryName(directoryToSave);
  try
  {
  Process p = new Process();
  // 需要啟動的程序名
  p.StartInfo.FileName = winrarExe ;
  // 參數
  string arguments = @"x -inul -y -o+";
  arguments += " " + rarFileToDecompress + " " + directoryToSave;
  p.StartInfo.Arguments = arguments;
  p.Start();//啟動
  while(!p.HasExited)
  {
   }
  p.WaitForExit();
  }
  catch(Exception ee)
  {
  throw new Exception("上傳的壓縮文件在解壓縮的過程中出現了錯誤!<BR>請聯系管理員檢查您是否有對相應目錄的寫入權限!");
  }
  if (deleteRarFile)
  {
  File.Delete(rarFileToDecompress);
  }
 }
 else
 {
  throw new Exception("系統服務器上缺少必須的Winrar.exe文件,不能完成相應操作請聯系管理員!");
 }
 }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved